* Howddya specify max supported dependency version for a package?
@ 2022-01-16 7:03 Jacob Hrbek
2022-01-16 8:46 ` Julien Lepiller
0 siblings, 1 reply; 4+ messages in thread
From: Jacob Hrbek @ 2022-01-16 7:03 UTC (permalink / raw)
To: help-guix
[-- Attachment #1.1: Type: text/plain, Size: 2891 bytes --]
(define-public qbittorrent
(package
(name "qbittorrent")
(version "4.2.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/qbittorrent/qBittorrent")
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n613ylg6i9gisgk0dbr2kpfasyizrkdjff1r8smd4vri2qrdksn"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list (string-append "--with-boost-libdir="
(assoc-ref %build-inputs "boost")
"/lib")
"--enable-debug"
"QMAKE_LRELEASE=lrelease")
#:modules ((guix build gnu-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-qt
(lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program "qbittorrent" #:output out #:inputs
inputs))
#t)))))
(native-inputs
(list pkg-config qttools))
(inputs
`(("boost" ,boost)
("libtorrent-rasterbar" ,libtorrent-rasterbar)
("openssl" ,openssl)
;; NOTE(Krey): Max supported version declared in
https://github.com/qbittorrent/qBittorrent/blob/5c0378a6845e3484023f4c76893ff9f0e5178460/src/base/utils/foreignapps.cpp#L269
("python" ,python-wrapper)
("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)
("zlib" ,zlib)))
(home-page "https://www.qbittorrent.org/")
(synopsis "Graphical BitTorrent client")
(description
"qBittorrent is a BitTorrent client programmed in C++/Qt that uses
libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
It aims to be a good alternative to all other BitTorrent clients out there.
qBittorrent is fast, stable and provides unicode support as well as many
features.")
(license l:gpl2+)))
I am trying to make a patch to fix
https://github.com/qbittorrent/qBittorrent/issues/16139 which is caused
by us using an unsupported python version -> How can i specify that the
package is only allowed to use python 3.2 <= 3.5.0 ?
--
Jacob Hrbek
[-- Attachment #1.2: publickey - kreyren@rixotstudio.cz - 1677db82.asc --]
[-- Type: application/pgp-keys, Size: 713 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 249 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Howddya specify max supported dependency version for a package?
2022-01-16 7:03 Howddya specify max supported dependency version for a package? Jacob Hrbek
@ 2022-01-16 8:46 ` Julien Lepiller
2022-01-16 9:51 ` bug#53300: Guix's is unable to correctly package qbittorrent-4.2.5 Jacob Hrbek
0 siblings, 1 reply; 4+ messages in thread
From: Julien Lepiller @ 2022-01-16 8:46 UTC (permalink / raw)
To: Jacob Hrbek, help-guix
Simple unhelpful answer, you can't. Guix doesn't work like that. We don't specify package range or give a package any way to choose itt dependencies. When you specify a dependency, it's always a reference to a very specific packaqe (though the reference might evolve with newer guix revisions). It simplifies package management since there's no constraint solving or anything of the sort.
For your problem I see two potential solutions: fix the package to allow our current python version, though there might be a reason why it's not allowed, or package python 3.5 and use it instead of the current python version.
HTH
Le 16 janvier 2022 08:03:53 GMT+01:00, Jacob Hrbek <kreyren@rixotstudio.cz> a écrit :
>(define-public qbittorrent
> (package
> (name "qbittorrent")
> (version "4.2.5")
> (source
> (origin
> (method git-fetch)
> (uri (git-reference
> (url "https://github.com/qbittorrent/qBittorrent")
> (commit (string-append "release-" version))))
> (file-name (git-file-name name version))
> (sha256
> (base32 "1n613ylg6i9gisgk0dbr2kpfasyizrkdjff1r8smd4vri2qrdksn"))))
> (build-system gnu-build-system)
> (arguments
> `(#:configure-flags
> (list (string-append "--with-boost-libdir="
> (assoc-ref %build-inputs "boost")
> "/lib")
> "--enable-debug"
> "QMAKE_LRELEASE=lrelease")
> #:modules ((guix build gnu-build-system)
> (guix build qt-utils)
> (guix build utils))
> #:imported-modules (,@%gnu-build-system-modules
> (guix build qt-utils))
> #:phases
> (modify-phases %standard-phases
> (add-after 'install 'wrap-qt
> (lambda* (#:key outputs inputs #:allow-other-keys)
> (let ((out (assoc-ref outputs "out")))
> (wrap-qt-program "qbittorrent" #:output out #:inputs
>inputs))
> #t)))))
> (native-inputs
> (list pkg-config qttools))
> (inputs
> `(("boost" ,boost)
> ("libtorrent-rasterbar" ,libtorrent-rasterbar)
> ("openssl" ,openssl)
> ;; NOTE(Krey): Max supported version declared in
>https://github.com/qbittorrent/qBittorrent/blob/5c0378a6845e3484023f4c76893ff9f0e5178460/src/base/utils/foreignapps.cpp#L269
> ("python" ,python-wrapper)
> ("qtbase" ,qtbase-5)
> ("qtsvg" ,qtsvg)
> ("zlib" ,zlib)))
> (home-page "https://www.qbittorrent.org/")
> (synopsis "Graphical BitTorrent client")
> (description
> "qBittorrent is a BitTorrent client programmed in C++/Qt that uses
>libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
>
>It aims to be a good alternative to all other BitTorrent clients out there.
>qBittorrent is fast, stable and provides unicode support as well as many
>features.")
> (license l:gpl2+)))
>
>
>I am trying to make a patch to fix
>https://github.com/qbittorrent/qBittorrent/issues/16139 which is caused
>by us using an unsupported python version -> How can i specify that the
>package is only allowed to use python 3.2 <= 3.5.0 ?
>
>--
>Jacob Hrbek
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#53300: Guix's is unable to correctly package qbittorrent-4.2.5
2022-01-16 8:46 ` Julien Lepiller
@ 2022-01-16 9:51 ` Jacob Hrbek
[not found] ` <handler.53300.B.164232668214275.ack@debbugs.gnu.org>
0 siblings, 1 reply; 4+ messages in thread
From: Jacob Hrbek @ 2022-01-16 9:51 UTC (permalink / raw)
To: 53300
[-- Attachment #1.1.1: Type: text/plain, Size: 5391 bytes --]
See https://github.com/qbittorrent/qBittorrent/issues/16139 and
forwarded message.
qbittorrent-4.2.5 declares python dependency on <=3.5.0
(https://github.com/qbittorrent/qBittorrent/blob/5c0378a6845e3484023f4c76893ff9f0e5178460/src/base/utils/foreignapps.cpp#L269)
which causes the program to fail with "Python is required to use the
search engine but it does not seem to be installed"
(https://github.com/qbittorrent/qBittorrent/blob/00f6bb7c8225285a7929426187a1513d247b582b/src/gui/mainwindow.cpp#L1834)
where Guix is only capable of providing python-3.9.6.
From Lepiller's response i understood that our development process is
to patch the package to accept new python which i argue is unhealthy and
hostile towards the upstream as we are putting an unwanted pressure on
their Quality Assurance which may force them to rush the process
As such proposing to package all python versions and enable to use a
version range per dependency.
Also python is notorious for it's dependency on various versions so this
would make all python packages (and packages with similar programming
language limitations) on guix more robust.
-------- Forwarded Message --------
Subject: Re: Howddya specify max supported dependency version for a
package?
Date: Sun, 16 Jan 2022 09:46:53 +0100
From: Julien Lepiller <julien@lepiller.eu>
Reply-To: Julien Lepiller <julien@lepiller.eu>
To: Jacob Hrbek <kreyren@rixotstudio.cz>, help-guix@gnu.org
Simple unhelpful answer, you can't. Guix doesn't work like that. We
don't specify package range or give a package any way to choose itt
dependencies. When you specify a dependency, it's always a reference to
a very specific packaqe (though the reference might evolve with newer
guix revisions). It simplifies package management since there's no
constraint solving or anything of the sort.
For your problem I see two potential solutions: fix the package to allow
our current python version, though there might be a reason why it's not
allowed, or package python 3.5 and use it instead of the current python
version.
HTH
Le 16 janvier 2022 08:03:53 GMT+01:00, Jacob Hrbek
<kreyren@rixotstudio.cz> a écrit :
(define-public qbittorrent
(package
(name "qbittorrent")
(version "4.2.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url"https://github.com/qbittorrent/qBittorrent")
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n613ylg6i9gisgk0dbr2kpfasyizrkdjff1r8smd4vri2qrdksn"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list (string-append "--with-boost-libdir="
(assoc-ref %build-inputs "boost")
"/lib")
"--enable-debug"
"QMAKE_LRELEASE=lrelease")
#:modules ((guix build gnu-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-qt
(lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program "qbittorrent" #:output out #:inputs
inputs))
#t)))))
(native-inputs
(list pkg-config qttools))
(inputs
`(("boost" ,boost)
("libtorrent-rasterbar" ,libtorrent-rasterbar)
("openssl" ,openssl)
;; NOTE(Krey): Max supported version declared in
https://github.com/qbittorrent/qBittorrent/blob/5c0378a6845e3484023f4c76893ff9f0e5178460/src/base/utils/foreignapps.cpp#L269
("python" ,python-wrapper)
("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)
("zlib" ,zlib)))
(home-page"https://www.qbittorrent.org/")
(synopsis "Graphical BitTorrent client")
(description
"qBittorrent is a BitTorrent client programmed in C++/Qt that uses
libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
It aims to be a good alternative to all other BitTorrent clients out there.
qBittorrent is fast, stable and provides unicode support as well as many
features.")
(license l:gpl2+)))
I am trying to make a patch to fix
https://github.com/qbittorrent/qBittorrent/issues/16139 which is caused
by us using an unsupported python version -> How can i specify that the
package is only allowed to use python 3.2 <= 3.5.0 ?
-- Jacob Hrbek
[-- Attachment #1.1.2: Type: text/html, Size: 8103 bytes --]
[-- Attachment #1.2: publickey - kreyren@rixotstudio.cz - 1677db82.asc --]
[-- Type: application/pgp-keys, Size: 713 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 249 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#53300: Acknowledgement (Guix's is unable to correctly package qbittorrent-4.2.5)
[not found] ` <handler.53300.B.164232668214275.ack@debbugs.gnu.org>
@ 2022-01-16 11:26 ` Jacob Hrbek
0 siblings, 0 replies; 4+ messages in thread
From: Jacob Hrbek @ 2022-01-16 11:26 UTC (permalink / raw)
To: 53300
[-- Attachment #1.1: Type: text/plain, Size: 875 bytes --]
Invalid it's >=3.5.0 meaning 3.5.0 and up i missread the code
On 1/16/22 10:52, help-debbugs@gnu.org wrote:
> Thank you for filing a new bug report with debbugs.gnu.org.
>
> This is an automatically generated reply to let you know your message
> has been received.
>
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>
> Your message has been sent to the package maintainer(s):
> bug-guix@gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 53300@debbugs.gnu.org.
>
> Please do not send mail to help-debbugs@gnu.org unless you wish
> to report a problem with the Bug-tracking system.
>
> --
> 53300: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=53300
> GNU Bug Tracking System
> Contact help-debbugs@gnu.org with problems
--
Jacob Hrbek
[-- Attachment #1.2: publickey - kreyren@rixotstudio.cz - 1677db82.asc --]
[-- Type: application/pgp-keys, Size: 713 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 249 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-01-16 11:27 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-16 7:03 Howddya specify max supported dependency version for a package? Jacob Hrbek
2022-01-16 8:46 ` Julien Lepiller
2022-01-16 9:51 ` bug#53300: Guix's is unable to correctly package qbittorrent-4.2.5 Jacob Hrbek
[not found] ` <handler.53300.B.164232668214275.ack@debbugs.gnu.org>
2022-01-16 11:26 ` bug#53300: Acknowledgement (Guix's is unable to correctly package qbittorrent-4.2.5) Jacob Hrbek
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.