Bugzilla – Bug 1181552
Dependency issue installing texlive-xurl on a new Tumbleweed system
Last modified: 2023-08-14 13:34:00 UTC
I solved the issue selecting "4", but I think this dependency issue should not occur. Problem: texlive-xurl-2020.176.0.0.09svn53538-42.4.noarch requires ed, but this requirement cannot be provided not installable providers: ed-1.16-2.1.i586[openSUSE-20210121-0] ed-1.16-2.1.x86_64[openSUSE-20210121-0] Solution 1: Following actions will be done: do not install texlive-xurl-2020.176.0.0.09svn53538-42.4.noarch do not install texlive-hyphen-arabic-2020.176.svn54568-42.2.noarch Solution 2: Following actions will be done: do not install texlive-collection-langarabic-2020.171.svn54405-49.1.noarch do not install texlive-gincltex-2020.176.0.0.3svn23835-42.2.noarch do not install texlive-svg-2020.176.2.02esvn53389-47.2.noarch do not install texlive-fvextra-2020.176.1.4svn49947-42.2.noarch do not install texlive-ltablex-2020.176.1.1svn34923-42.2.noarch do not install texlive-nowidow-2020.176.1.0svn24066-43.2.noarch do not install texlive-hyphen-arabic-2020.176.svn54568-42.2.noarch do not install texlive-luacode-2020.176.1.2asvn25193-42.2.noarch do not install texlive-luatex-2020.176.svn54610-42.2.noarch do not install texlive-xurl-2020.176.0.0.09svn53538-42.4.noarch Solution 3: deinstallation of busybox-ed-1.32.1-14.2.noarch Solution 4: break texlive-xurl-2020.176.0.0.09svn53538-42.4.noarch by ignoring some of its dependencies
(In reply to Johannes Weberhofer from comment #0) > I solved the issue selecting "4", but I think this dependency issue should > not occur. > > > Problem: texlive-xurl-2020.176.0.0.09svn53538-42.4.noarch requires ed, but > this requirement cannot be provided > not installable providers: ed-1.16-2.1.i586[openSUSE-20210121-0] > ed-1.16-2.1.x86_64[openSUSE-20210121-0] Why is ed not installable on your system? This is a common UNIX tools. This is the correct solution > Solution 3: deinstallation of busybox-ed-1.32.1-14.2.noarch ... maybe busybox-ed should use update-alternatives beside this *all* texlive packages do require common UNIX tools Requires(posttrans): coreutils Requires(posttrans): ed Requires(posttrans): findutils Requires(posttrans): grep Requires(posttrans): sed don't know if busybox-ed aka the ed builtin of busybox is as powerful as the GNU ed
(In reply to Johannes Weberhofer from comment #0) > I solved the issue selecting "4", but I think this dependency issue should > not occur. If you install something later, dependency issues are unavoidable in some cases. (In reply to Dr. Werner Fink from comment #1) > This is the correct solution > > > Solution 3: deinstallation of busybox-ed-1.32.1-14.2.noarch > > ... maybe busybox-ed should use update-alternatives No, update-alternatives is a nightmare, no solution. If you have conflicting packages, a conflict is the correct way. And it is easy solveable during later installation by solving the conflict. > beside this *all* texlive packages do require common UNIX tools No, common GNU tools, not UNIX. If you only need the POSIX/UNIX variant and not the GNU extensions, /usr/bin/ed as requires is good enough. If you need the GNU extensions, "ed" as requires is correct. > don't know if busybox-ed aka the ed builtin of busybox is as powerful as the > GNU ed It's a POSIX conform implementation, no GNU enhanced version. But I don't know why busybox-ed got installed in the first place.
(In reply to Thorsten Kukuk from comment #2) > > No, common GNU tools, not UNIX. If you only need the POSIX/UNIX variant and > not the GNU extensions, /usr/bin/ed as requires is good enough. If you need > the GNU extensions, "ed" as requires is correct. I've no problem to replace Requires(posttrans): ed Requires(posttrans): grep Requires(posttrans): sed with Requires(posttrans): /usr/bin/ed Requires(posttrans): /usr/bin/grep Requires(posttrans): /usr/bin/sed and rerun my spec file generator script ... but how to do this with Requires(posttrans): coreutils Requires(posttrans): findutils there is no '||' to use busybox-coreutils and busybox-findutils ... maybe I should pick a common tool like /usr/bin/rm resp. /usr/bin/find > > > don't know if busybox-ed aka the ed builtin of busybox is as powerful as the > > GNU ed > > It's a POSIX conform implementation, no GNU enhanced version. The tools are mainly used in /usr/share/texmf/texconfig/update which is a bash script > But I don't know why busybox-ed got installed in the first place. That can only answer the reporter here ... Johannes?
> > But I don't know why busybox-ed got installed in the first place. > > That can only answer the reporter here ... Johannes? I have seen several issues regarding busybox when installing packages on a new tumbleweed computer in the last days. Unfortunately I didn't note them. It would possible make sense to highlight on the developer mailinglist which software has been/should be replaced by busybox versions. Thank you for digging into that issues.
(In reply to Dr. Werner Fink from comment #3) > (In reply to Thorsten Kukuk from comment #2) > > > > > No, common GNU tools, not UNIX. If you only need the POSIX/UNIX variant and > > not the GNU extensions, /usr/bin/ed as requires is good enough. If you need > > the GNU extensions, "ed" as requires is correct. > > I've no problem to replace > > Requires(posttrans): ed > Requires(posttrans): grep > Requires(posttrans): sed > > with > > Requires(posttrans): /usr/bin/ed > Requires(posttrans): /usr/bin/grep > Requires(posttrans): /usr/bin/sed Please make sure that you use only POSIX compatible commands. > and rerun my spec file generator script ... but how to do this with > > Requires(posttrans): coreutils > Requires(posttrans): findutils > > there is no '||' to use busybox-coreutils and busybox-findutils ... maybe I > should pick a common tool like /usr/bin/rm resp. /usr/bin/find Keep coreutils and findutils. There is no way on plain Tumbleweed or MicroOS to replace them with the busybox variant, we use far too many GNU extensions. We use them only for containers. Of course, if you are sure you don't use any GNU extension, you can use the new RPM boolean format. But don't ask me how his has too look like. Must be something like Requires: (coreutils or busybox-coreutils)
(In reply to Johannes Weberhofer from comment #4) > I have seen several issues regarding busybox when installing packages on a > new tumbleweed computer in the last days. The solver prefers the first he found, and busybox-ed comes before ed. If I find time I need to dig out which of the busybox variants get installed and why, none of my Tumbleweed systems have busybox-* packages installed.