From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Baines Subject: Re: question re. packaging, build, init and shepherd Date: Thu, 09 May 2019 18:03:21 +0100 Message-ID: <874l63o90m.fsf@cbaines.net> References: Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([209.51.188.92]:51344) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hOmS7-0002OF-DL for help-guix@gnu.org; Thu, 09 May 2019 13:03:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hOmS6-0006vq-9O for help-guix@gnu.org; Thu, 09 May 2019 13:03:27 -0400 Received: from mira.cbaines.net ([2a01:7e00::f03c:91ff:fe69:8da9]:46580) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hOmS6-0006vS-0x for help-guix@gnu.org; Thu, 09 May 2019 13:03:26 -0400 Received: from localhost (cpc102582-walt20-2-0-cust14.13-2.cable.virginm.net [86.27.34.15]) by mira.cbaines.net (Postfix) with ESMTPSA id 89C0F16FD1 for ; Thu, 9 May 2019 18:03:24 +0100 (BST) Received: from capella (localhost [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id 37445d2e for ; Thu, 9 May 2019 17:03:24 +0000 (UTC) In-reply-to: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org --=-=-= Content-Type: text/plain Miles Fidelman writes: > The GUIX documentation is great when it comes to installing GUIX, and > then installing packaged software. > > It's not so clear on how do install software that isn't in the package > repository - whether by creating a package, or via the classic > ./configure;make;make install, or if there are tools that can bring > classically installed software under package management (e.g., the > Debian alien tool). I can't really think of a situation where creating a package would be a bad approach, and the manual does describe this. There's also the packaging tutorial blog post [1] 1: https://www.gnu.org/software/guix/blog/2018/a-packaging-tutorial-for-guix/ I think there could indeed be a lack of guidance about where do perhaps deviate from the instructions or common steps for installing software. Taking the shepherd as an example, the INSTALL file distributed with the source contains the common: './configure && make && make install' With a Guix System, that would probably work, at least initially. But you'd be missing out on some of the advantages Guix packages offer, and would possibly run in to problems with garbage collection. As Guix doesn't really have binary packages like Debian, there isn't really the possibility of a Alien like tool. The dependencies between the "binary" package forms are very strict, using exact store paths, which would make generating a package to slot in to a system difficult. > And then there's the question of init systems: Until systemd came > along, ./configure;make;make install generally just works - leaving > init files in the right places, starting up daemons, etc. > > Which leads to the question of, if I want to install something > complicated in GUIX - say the Sympa list manager (to pick a non-random > example), which comes with standard sysvinit scripts - can I just > ./configure;make;make install? Does Shepherd do the right thing with > sysvinit scripts? Can I invoke them through Shepherd (e.g, after a > config change)? Can I still edit & invoke the init scripts in the > classic ways (vi, /etc/init.d/ restart). The configuration of the shepherd is normally entirely managed through your Guix operating-system definition. The configuration is generated in te store, and shepherd looks at that. This is important as it allows you to boot in to previous generations of your system, which is useful for recovering the system if things go wrong. So, whereas I think things like systemd are aware of sysvinit scripts in the usual place, the shepherd is completely unaware. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEEPonu50WOcg2XVOCyXiijOwuE9XcFAlzUXVpfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcACgkQXiijOwuE 9XeOnhAAmaASIkgAraPPXQ5vn6hQYmjW6ashNpp6PdWa80RfCsbF1GS7rFzdNQhV yBB5+8A08YdIfSsK6w96Gjvy4PGbS9vIl4/mZ1g2hs3YsamCKdDHtX5UMtvUba1u XZwhIi3NAklYb2k1PC3FbMrKZF6NNsmW4JLgOKYlIFvbu2afKN2oegS9cAfojrX0 TXBAFHdP0N5WMaNO1nAwCJU5QH0sWMkqeGuypfSolzENIYMe3EWrrxwNTrkm3af0 EHnYmp7ZuCGDtjfUAO6I9scQjuRgdue162bxZLD4u0YLAAwFBEbDAk5TjzoVRELv zvLkZRgcRnvSk8Uy4S4C+SbHQ6+YCvH+CPfpMPkV/wuDxa0ROv/Lv8TvDnc85msT aln0infpArDNrbfJTmxXZE+HbJdr7mqKhcuxaLTE9dTdYFVa3FN9uLxsMDlty7uv VkzwYjKqsVcgP+NCmvI2LCSqJ20UQLpFfDqaFwiCkmcHFK6jLbfxshwAdSNkmbjk CK95i/zjmbUggFVjzOZSY4ChBq7Pe60O5fzpPWBBVAreqVSI7aiUn6iDjyYlCvTl 6AwwbFgI2Ulx0R7EvLZpMoiLPceWSZwvTWWhtixFs6i4dbo3W0gw+0/E4iP8h1/v DNMst+xrHRGDJ/SVBbZEV50cGxqBWU4Bu11BTJFWemuRVljwqwM= =MtZ1 -----END PGP SIGNATURE----- --=-=-=--