Bugzilla – Bug 1212815
kitty doesn't start on SLED
Last modified: 2023-08-08 14:46:18 UTC
This is on SLED 15.4, installing kitty from backports, > kitty [179 14:58:30.045974] Traceback (most recent call last): File "/usr/bin/../lib/kitty/kitty/constants.py", line 185, in read_kitty_resource from importlib.resources import read_binary ModuleNotFoundError: No module named 'importlib.resources' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/bin/../lib/kitty/kitty/main.py", line 349, in main _main() File "/usr/bin/../lib/kitty/kitty/main.py", line 342, in _main run_app(opts, cli_opts, bad_lines) File "/usr/bin/../lib/kitty/kitty/main.py", line 183, in __call__ _run_app(opts, args, bad_lines) File "/usr/bin/../lib/kitty/kitty/main.py", line 160, in _run_app args.cls or appname, load_all_shaders, disallow_override_title=bool(args.title)) File "/usr/bin/../lib/kitty/kitty/main.py", line 92, in load_all_shaders load_shader_programs(semi_transparent) File "/usr/bin/../lib/kitty/kitty/window.py", line 213, in __call__ compile_program(BLIT_PROGRAM, *load_shaders('blit')) File "/usr/bin/../lib/kitty/kitty/utils.py", line 70, in load_shaders return load('vertex'), load('fragment') File "/usr/bin/../lib/kitty/kitty/utils.py", line 68, in load return read_kitty_resource(f'{name}_{which}.glsl').decode('utf-8').replace('GLSL_VERSION', str(GLSL_VERSION), 1) File "/usr/bin/../lib/kitty/kitty/constants.py", line 187, in read_kitty_resource from importlib_resources import read_binary # type: ignore ModuleNotFoundError: No module named 'importlib_resources'
> ModuleNotFoundError: No module named 'importlib.resources' `zypper in python3-importlib_resources` will fix it. That's quite the old version of kitty and certainly predates my involvement with it. Seems like it should have a "Recommends: python3-importlib-resources", but possilbly the tester already had that library and it went un-noticed. My .spec for kitty doesn't include it and if I try to remove python311-importlib-resources (granted, in TW, where it's current) it wants to take 2 other packages with it. Personally, I'm not sure we should expect a current Kitty in SLE ~ it now involves (a very recent) "go" which [possibly?] wouldn't be quick/easy to backport on any type of regular basis.
(In reply to Scott Bradnick from comment #1) > > ModuleNotFoundError: No module named 'importlib.resources' > > `zypper in python3-importlib_resources` will fix it. That's quite the old > version of kitty and certainly predates my involvement with it. Seems like > it should have a "Recommends: python3-importlib-resources", but possilbly > the tester already had that library and it went un-noticed. My .spec for > kitty doesn't include it and if I try to remove > python311-importlib-resources (granted, in TW, where it's current) it wants > to take 2 other packages with it. > > Personally, I'm not sure we should expect a current Kitty in SLE ~ it now > involves (a very recent) "go" which [possibly?] wouldn't be quick/easy to > backport on any type of regular basis. The package has BuildRequires: python3-importlib_resources but is missing the requires ;). This requirement is also missing in Factory, btw, so maybe when you update it in Factory to have all Requires that are needed, you can also send it to Backports for Leap/SLE users. Regarding Golang, we are shipping the version that would be required. isc cat SUSE:SLE-15:Update go go.spec | grep Version Version: 1.20
I have this: https://build.opensuse.org/package/show/home:sbradnick:branches:X11:terminals/kitty Things are looking good keeping the existing .spec setup and building for: - Leap 15.4 - Leap 15.5 - SLE 15SP4 - SLE 15SP5 It makes use of https://build.opensuse.org/request/show/1085669 which I haven't merged in yet, but this would be a good case to do so. There was also code worked out to separate out these 2 packages: 1. kitty-shell-integration 2. kitty-terminfo but that can also wait for a later day unless I get it included before Kovid does the next release. I would like to have the docs included, but it doesn't appear distros that aren't TW can support that (based on the available >python3.6 packages available), so that dream will have to wait for another day :P
This is resolved as far as kitty is concerned, I'm not sure how X11:terminals/kitty makes its way into SLE Backports. Seems like 1 person generally handles that and I'm really not sure where they pull from and submit to. I'll add some info here: PROJECT: https://build.opensuse.org/package/show/openSUSE:Backports:SLE-15-SP5/kitty PERSON: Yuchen Lin (maxlin_factory)
(In reply to Scott Bradnick from comment #4) > This is resolved as far as kitty is concerned, I'm not sure how > X11:terminals/kitty makes its way into SLE Backports. Seems like 1 person > generally handles that and I'm really not sure where they pull from and > submit to. I'll add some info here: > > PROJECT: > https://build.opensuse.org/package/show/openSUSE:Backports:SLE-15-SP5/kitty > > PERSON: > Yuchen Lin (maxlin_factory) You do a sr from devel project or factory to backports. Backports is also known as Leap :-) osc sr X11:terminals kitty openSUSE:Backports:SLE-15-SP5:Update I just did the submit request and it's here. You may need to review it for it to proceed. https://build.opensuse.org/request/show/1102814
(In reply to Adam Majer from comment #5) > (In reply to Scott Bradnick from comment #4) > > This is resolved as far as kitty is concerned, I'm not sure how > > X11:terminals/kitty makes its way into SLE Backports. Seems like 1 person > > generally handles that and I'm really not sure where they pull from and > > submit to. I'll add some info here: > > > > PROJECT: > > https://build.opensuse.org/package/show/openSUSE:Backports:SLE-15-SP5/kitty > > > > PERSON: > > Yuchen Lin (maxlin_factory) > > You do a sr from devel project or factory to backports. Backports is also > known as Leap :-) > > osc sr X11:terminals kitty openSUSE:Backports:SLE-15-SP5:Update > > I just did the submit request and it's here. You may need to review it for > it to proceed. > > https://build.opensuse.org/request/show/1102814 I agree, in theory it's that simple (and maybe it will be here), but I generally find a tangled web of it bouncing around _somewhere_ and not necessarily ending up where I'd expect (even after something is approved) until I poke around somewhere else and ask someone to do another step and a not-insignificant amount of time elapses. Historically, it seems like kitty is updated in SLE [or (aka?) Leap Backports] via Factory by maxlin (not that only one person can participate of course). Someone did the same as what you did here --> https://build.opensuse.org/package/show/openSUSE:Backports:SLE-15-SP4/kitty ; so I have no reason to think it's not enough in this case 👍️
(In reply to Scott Bradnick from comment #6) > Historically, it seems like kitty is updated in SLE [or (aka?) Leap > Backports] via Factory by maxlin (not that only one person can participate > of course). Those are done automatically from Factory for branched packages in Leap as version updates for GA. Someone (maintainer normally) still needs to push maintenance updates manually during lifecycle of Leap. - Adam