[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to remove output from inherited package?
From: |
Bodertz |
Subject: |
Re: How to remove output from inherited package? |
Date: |
Thu, 26 Dec 2024 21:52:42 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
宋文武 via "Development of GNU Guix and the GNU System distribution."
<guix-devel@gnu.org> writes:
> I think you should not reuse phases from transmisison, the error came
> from '#$phases', which has reference to 'gui' output. so:
>
> ...
> (inherit transmission)
> (name "transmission-qt")
> (outputs '("out")
> (arguments
> (list ...)) ; instead of 'substitute-keyword-arguments'
> ...
Hmm, you appear to be right, but I don't understand why, as I removed
the tests that referenced the :gui output: 'move-gui, 'glib-or-gtk-wrap,
and 'wrap-program.
Do you understand it? Did I miss one?
When I try to build without using any of the inherited phases, a test
fails (the transmission package included a phase to remove that test),
so for now I'm building without tests:
(define-public transmission-qt-without-arguments
(package
(inherit transmission)
(outputs '("out"))
(name "transmission-qt-without-arguments")
(arguments
(list))
(inputs (modify-inputs (package-inputs transmission)
(delete "gtkmm")
(append qtbase qttools qtsvg)))))
~ guix build transmission-qt-without-arguments
--without-tests=transmission-qt-without-arguments
successfully built
/gnu/store/i78ffafvchfn886b17s5vdwjqs387f98-transmission-qt-without-arguments-4.0.6.drv
Will I have to manually add back the phase that deals with removing that
test? I was hoping to avoid that sort of thing by inheriting from
transmission in the first place...
Thanks.