* Mystery of missing 'install' phase in guile-build-system @ 2024-09-26 21:13 Felix Lechner via Development of GNU Guix and the GNU System distribution. 2024-09-26 21:26 ` Ekaitz Zarraga 0 siblings, 1 reply; 4+ messages in thread From: Felix Lechner via Development of GNU Guix and the GNU System distribution. @ 2024-09-26 21:13 UTC (permalink / raw) To: guix-devel Hi, A piece of software of mine using the guile-build-system runs tests after the 'install' phase. A recent system update failed because there is no such phase. Looking at the Guix source code, the 'install' phase never existed. Shouldn't every build system have that phase? Why did the same package definition work three months ago? Thanks for helping with this mystery! Kind regards Felix ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Mystery of missing 'install' phase in guile-build-system 2024-09-26 21:13 Mystery of missing 'install' phase in guile-build-system Felix Lechner via Development of GNU Guix and the GNU System distribution. @ 2024-09-26 21:26 ` Ekaitz Zarraga 2024-09-27 16:00 ` Luis Felipe 2024-10-07 21:10 ` Felix Lechner via Development of GNU Guix and the GNU System distribution. 0 siblings, 2 replies; 4+ messages in thread From: Ekaitz Zarraga @ 2024-09-26 21:26 UTC (permalink / raw) To: Felix Lechner, guix-devel Hi, On 2024-09-26 23:13, Felix Lechner via Development of GNU Guix and the GNU System distribution. wrote: > Hi, > > A piece of software of mine using the guile-build-system runs tests > after the 'install' phase. A recent system update failed because there > is no such phase. > > Looking at the Guix source code, the 'install' phase never existed. > Shouldn't every build system have that phase? > > Why did the same package definition work three months ago? > > Thanks for helping with this mystery! > > Kind regards > Felix > The fast and simple answer is that the 'install phase is not mandatory. The build system defines which of the steps it uses and how, they don't need to have specific names. A different question is how does the Guile build system find which files to install and where to install them. :) It's a little bit late so I can't check it deeper but you should find how it is done in: guix/build/guile-build-system.scm Good question btw! Cheers, Ekaitz ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Mystery of missing 'install' phase in guile-build-system 2024-09-26 21:26 ` Ekaitz Zarraga @ 2024-09-27 16:00 ` Luis Felipe 2024-10-07 21:10 ` Felix Lechner via Development of GNU Guix and the GNU System distribution. 1 sibling, 0 replies; 4+ messages in thread From: Luis Felipe @ 2024-09-27 16:00 UTC (permalink / raw) To: Ekaitz Zarraga, Felix Lechner, guix-devel [-- Attachment #1.1.1: Type: text/plain, Size: 1429 bytes --] Hi Felix, Ekaitz, On 26/09/24 21:26, Ekaitz Zarraga wrote: > Hi, > > On 2024-09-26 23:13, Felix Lechner via Development of GNU Guix and the > GNU System distribution. wrote: >> Hi, >> >> A piece of software of mine using the guile-build-system runs tests >> after the 'install' phase. A recent system update failed because there >> is no such phase. Sounds like what happened during my last failed upgrade (https://lists.gnu.org/archive/html/help-guix/2024-09/msg00076.html). >> Looking at the Guix source code, the 'install' phase never existed. >> Shouldn't every build system have that phase? >> >> Why did the same package definition work three months ago? >> >> Thanks for helping with this mystery! >> >> Kind regards >> Felix >> > > The fast and simple answer is that the 'install phase is not > mandatory. The build system defines which of the steps it uses and > how, they don't need to have specific names. Yeah, although that fact doesn't seem to be documented. Nor that, currently, if you modify the phases of a build system using, say, "(add-after 'install 'check check)", the "install" phase *must* exist, otherwise the module fails to compile. And that wasn't the case in previous versions of Guix. So, maybe additional documentation might be necessary. I think the documentation is missing more information on how define custom build systems even (?). [-- Attachment #1.1.2: OpenPGP public key --] [-- Type: application/pgp-keys, Size: 2881 bytes --] [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 495 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Mystery of missing 'install' phase in guile-build-system 2024-09-26 21:26 ` Ekaitz Zarraga 2024-09-27 16:00 ` Luis Felipe @ 2024-10-07 21:10 ` Felix Lechner via Development of GNU Guix and the GNU System distribution. 1 sibling, 0 replies; 4+ messages in thread From: Felix Lechner via Development of GNU Guix and the GNU System distribution. @ 2024-10-07 21:10 UTC (permalink / raw) To: Ekaitz Zarraga; +Cc: guix-devel Hi Ekaitz, On Thu, Sep 26 2024, Ekaitz Zarraga wrote: > The fast and simple answer is that the 'install phase is not > mandatory. Well, the guile-build-system definitely installs something. > The build system defines which of the steps it uses and how, they > don't need to have specific names. It's confusing to do install items in the 'build' phase, plus it denies packagers the possibility to something in between. In my use case, tests run after the install phases and on the installed items, which is the way testing ought to be done. [1] Kind regards Felix [1] https://manpages.debian.org/unstable/autopkgtest/autopkgtest.1.en.html ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-10-07 21:11 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-09-26 21:13 Mystery of missing 'install' phase in guile-build-system Felix Lechner via Development of GNU Guix and the GNU System distribution. 2024-09-26 21:26 ` Ekaitz Zarraga 2024-09-27 16:00 ` Luis Felipe 2024-10-07 21:10 ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
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.