Mercurial > ~samis > hgweb.cgi > blag
diff posts/Ikiwiki_Guix.md @ 34:226daad31c1b
Fix a missed typo.
author | Samuel Hodgkins <samuel.hodgkins@sky.com> |
---|---|
date | Wed, 25 Oct 2017 03:55:34 +0100 |
parents | 097f9abc5afd |
children |
line wrap: on
line diff
--- a/posts/Ikiwiki_Guix.md Wed Oct 25 03:40:08 2017 +0100 +++ b/posts/Ikiwiki_Guix.md Wed Oct 25 03:55:34 2017 +0100 @@ -1,6 +1,6 @@ [[!meta title="Guix-based ikiwiki" author="samis"]] [[!tag tech linux guix ikiwiki]] -This site very obviously uses [ikiwiki](https://ikiwiki.info) both as a static wiki compiler but also for the few dynamic elements present. It's written in perl, and has a large number of Perl module dependencies. Nearly all of these do not care about the versions of much else, so they'll just work after you install them. Unfortunately, I discovered the Ikiwiki's image functionality uses the PerlMagick module, which does indeed depend on ImageMagick - in fact, it depended on ImageMagick 6.x. It wasn't in Alpine's package repositories for my version (they only )and installing it by hand did not work, failing with an error. I even tried replacing the distro's ImageMagick with my own that included perl support, but to no avail. +This site very obviously uses [ikiwiki](https://ikiwiki.info) both as a static wiki compiler but also for the few dynamic elements present. It's written in perl, and has a large number of Perl module dependencies. Nearly all of these do not care about the versions of much else, so they'll just work after you install them. Unfortunately, I discovered the Ikiwiki's image functionality uses the PerlMagick module, which does indeed depend on ImageMagick - in fact, it depended on ImageMagick 6.x. It wasn't in Alpine's package repositories for my version (they only had 7.x ) and installing it by hand did not work, failing with an error. I even tried replacing the distro's ImageMagick with my own that included perl support, but to no avail. # Enter Nix (and Guix) At this time I had previously encountered Nix and Guix, both of which offer a substantially different approach to package management compared with conventional systems (such as regular distro package managers but others as well). One of their offered features is isolation: You can use a package (or a version of a package) without that extending to other packages or the system as a whole. There's other useful features that drop out of their model but this is the key one in this context.