Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python is required to use the search engine but it does not seem to be installed #16139

Closed
Kreyren opened this issue Jan 16, 2022 · 8 comments
Closed

Comments

@Kreyren
Copy link

Kreyren commented Jan 16, 2022

qBittorrent & operating system versions

qBittorrent: 4.2.5
Operating system: GNU
Kernel: linux 5.15.14 (from nonguix)
Distribution: GNU GuixSD (172bd0b5cde2609389fd16d18862b5b612c4b000)
Qt: 5.15.2
libtorrent-rasterbar:
Boost: 1.77.0
libtorrent-rasterbar: 1.2.14
openssl: 1.1.1l
pkg-config: 0.29.2
python-wrapper: 3.9.6*
*python: 3.9.6
qtbase: 5.15.2
qtsvg: 5.15.2
qttools: 5.15.2
zlib: 1.2.11

What is the problem?

2022-01-16_06-47

Missing Python Runtime

Python is required to use the search engine but it does not seem to be installed.

Steps to reproduce

  1. Get GNU Guix (172bd0b5cde2609389fd16d18862b5b612c4b000)
  2. Invoke guix shell qbittorrent -- qbittorrent to open the GUI
  3. In GUI: View -> Search Engine
  4. The error above shows up

Note python installed.

Additional context

I am trying to fix this issue on GNU Guix, but including python package does not address the issue and the relevant codeblock:

if (!pyInfo.isValid())

Which leads to:

return (version >= Version {3, 5, 0});

Seems to indicate the python 3.9.6 is not supported which is causing this error.

If so the message should be adjusted for this scenario to avoid confusion.

Log(s) & preferences file(s)

No response

Relevants

R.1. https://issues.guix.gnu.org/53334

Kreyren added a commit to Kreyren/qBittorrent that referenced this issue Jan 16, 2022
I did not check whether all python components are compatible with the version

I will not submit changes, close or submit your own addition if the solution is insufficient.
@o-l-a-v
Copy link

o-l-a-v commented Jan 16, 2022

Maybe it's relevant that you're using a qBittorrent version from August 2020? Can it be reproduced with v4.4.0 or v4.3.9?

@Kreyren
Copy link
Author

Kreyren commented Jan 16, 2022

Maybe it's relevant that you're using a qBittorrent version from August 2020? Can it be reproduced with v4.4.0 or v4.3.9? -- @o-l-a-v (#16139 (comment))

Same issue, see

return (version >= Version {3, 5, 0});
which locks the supported version on <=3.5.0

@emixa-d
Copy link

emixa-d commented Jan 16, 2022

Doesn't that line do the inverse? I.e., that line was introduced in commit 71be4f0 with message ‘Update minimum Python version to 3.5.0’, so I'd think this restricts the version to >=3.5.0.

Maybe 'qbittorrent' just failed to find the "python"? Looking at the package definition of 'qbittorrent' in Guix, the location of 'python' isn't hardcoded. So maybe replacing "python3" by "/gnu/store/.../python3" (using 'substitute*') in

    if (testPythonInstallation("python3", pyInfo))

would work?

@emixa-d
Copy link

emixa-d commented Jan 16, 2022

@Kreyren: It has been named Guix System (not GuixSD) since 2019

@Kreyren
Copy link
Author

Kreyren commented Jan 16, 2022

Doesn't that line do the inverse? -- @emixa-d (#16139 (comment))

My fault! sorry read that wrong.

Maybe 'qbittorrent' just failed to find the "python"? Looking at the package definition of 'qbittorrent' in Guix, the location of 'python' isn't hardcoded. So maybe replacing "python3" by "/gnu/store/.../python3" (using 'substitute*') in -- @emixa-d (#16139 (comment))

Possible, guix provides python3 executable not python, waiting for the build atm with hot patch.

@Kreyren: It has been named Guix System (not GuixSD) since 2019 -- @emixa-d (#16139 (comment))

As far as i was told GNU GuixSD (SD = Standalone Distribution) is name for the distribution and Guix System is for systems that has guix installed alongside other package manager.

@emixa-d
Copy link

emixa-d commented Jan 16, 2022

@Kreyren: From the manual (Introduction):

You can install GNU Guix on top of an existing GNU/Linux system where
it complements the available tools without interference (*note
Installation::), or you can use it as a standalone operating system
distribution, “Guix System”(2).  *Note GNU Distribution::.

[...]

(2) We used to refer to Guix System as “Guix System Distribution” or
“GuixSD”.  We now consider it makes more sense to group everything under
the “Guix” banner since, after all, Guix System is readily available
through the ‘guix system’ command, even if you’re using a different
distro underneath!

Summarised: GuixSD (= Guix System Distribution) is a historical name for Guix System, Guix System is when you use Guix as operating system (with guix system reconfigure or guix system vm and friends) and by itself Guix is the package manager + a set of packages (I think that's a ‘distribution’ in your terminology?) + various CLI tools (guix lint, guix import, guix system, ...).

There might be incorrect information floating around in various places -- if you know where, that could be corrected.

@emixa-d
Copy link

emixa-d commented Jan 16, 2022

Possible, guix provides python3 executable not python, waiting for the build atm with hot patch.

FWIW guix does provide python, in the python-wrapper package. I don't know what you mean with ‘waiting for the build atm with hot patch’.

@Kreyren
Copy link
Author

Kreyren commented Jan 16, 2022

Solved, i was specifying python as build-dependency (native-inputs) instead of (inputs) for runtime dependency so it was available during build, but not during runtime.

thanks all for info that lead me to the solution.

#16139 (comment) is noted

@Kreyren Kreyren closed this as completed Jan 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants