Guix

No soy responsable del uso que usted haga de la información contenida o vinculada desde estas páginas web.

GNU Guix (pronunciado como “geeks”) es un administrador de paquetes puramente funcional para el sistema GNU.

Dependiente. En adición a las caracterísitcas estandard de administración de paquetes, Guix soporta actualiaciones transaccionales y roll-backs, administración de paquetes sin privilegios, perfiles por cada usuario y recolleción de basura.

Hackeable. Provee APIs de Scheme Guile, incluyendo lenguajes de alto nivel embebidos en domínio específico (EDSLs) para describir como están compuestos los paquetes.

Liberador. Guix es utiliado como la base de una distribución GNU/Linux que respeta la libertad de los usuarios de computadora.

Guix esta basado en el administrador de paquetes Nix.

groupadd guix-builder
for i in ''seq 1 10'';
  do
    useradd -g guix-builder -G guix-builder           \
            -d /var/empty -s ''which nologin''          \
            -c "Guix build user $i" --system          \
            guix-builder$i;
  done
wget ftp://alpha.gnu.org/gnu/guix/guix-0.7.tar.g
tar xvf ftp://alpha.gnu.org/gnu/guix/guix-0.7.tar.g
cd guix-0.7
./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc
make -j4
su
make install

Instalación en Fedora

yum -y install libunistring libunistring-devel libtool-ltdl libtool-ltdl-devel libffi libffi-devel
cd guile-2.0.2
./configure
make -j2
make install
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make -j2
make install

Instalación en QEMU

qemu-image convert gnu-xxx.linux -O vmdk gnu-xxx.vmdk

Inicia la VB

dhclient eth0
fdisk /dev/sdb
mkfs.ext4 /dev/sdb1
e2label /dev/sdb1 root
mkswap /dev/sdb2
swapon /dev/sdb2
mkdir ~/.config
mount /dev/sdb1 /mnt
mkdir /mnt/etc
head -n 18 /etc/configuration-template.scm > /mnt/etc/config.scm
echo ')' >> /mnt/etc/config.scm
sed -i 's/sdX/sdb/g' /mnt/etc/config.scm
export GUIX_VERSION=''find /gnu/store -type d -name \
    "*guix-$(guix --version | cut -d " " -f 4 | head -n 1)*" | cut -d '/' -f  4''
guix archive --authorize < /gnu/store/$GUIX_VERSION/share/guix/hydra.gnu.org.pub
guix pull
guix package -i guix
deco start cow-store /mnt
guix system init /mnt/etc/config.scm /mnt
guix-daemon --build-users-group=guix-builder

Referencias

Guix

No soy responsable del uso que usted haga de la información contenida o vinculada desde estas páginas web.

GNU Guix (pronunciado como “geeks”) es un administrador de paquetes puramente funcional para el sistema GNU.

Dependiente. En adición a las caracterísitcas estandard de administración de paquetes, Guix soporta actualiaciones transaccionales y roll-backs, administración de paquetes sin privilegios, perfiles por cada usuario y recolleción de basura.

Hackeable. Provee APIs de Scheme Guile, incluyendo lenguajes de alto nivel embebidos en domínio específico (EDSLs) para describir como están compuestos los paquetes.

Liberador. Guix es utiliado como la base de una distribución GNU/Linux que respeta la libertad de los usuarios de computadora.

Guix esta basado en el administrador de paquetes Nix.

groupadd guix-builder
for i in ''seq 1 10'';
  do
    useradd -g guix-builder -G guix-builder           \
            -d /var/empty -s ''which nologin''          \
            -c "Guix build user $i" --system          \
            guix-builder$i;
  done
wget ftp://alpha.gnu.org/gnu/guix/guix-0.7.tar.g
tar xvf ftp://alpha.gnu.org/gnu/guix/guix-0.7.tar.g
cd guix-0.7
./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc
make -j4
su
make install

Instalación en Fedora

yum -y install libunistring libunistring-devel libtool-ltdl libtool-ltdl-devel libffi libffi-devel
cd guile-2.0.2
./configure
make -j2
make install
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make -j2
make install

Instalación en QEMU

qemu-image convert gnu-xxx.linux -O vmdk gnu-xxx.vmdk

Inicia la VB

dhclient eth0
fdisk /dev/sdb
mkfs.ext4 /dev/sdb1
e2label /dev/sdb1 root
mkswap /dev/sdb2
swapon /dev/sdb2
mkdir ~/.config
mount /dev/sdb1 /mnt
mkdir /mnt/etc
head -n 18 /etc/configuration-template.scm > /mnt/etc/config.scm
echo ')' >> /mnt/etc/config.scm
sed -i 's/sdX/sdb/g' /mnt/etc/config.scm
export GUIX_VERSION=''find /gnu/store -type d -name \
    "*guix-$(guix --version | cut -d " " -f 4 | head -n 1)*" | cut -d '/' -f  4''
guix archive --authorize < /gnu/store/$GUIX_VERSION/share/guix/hydra.gnu.org.pub
guix pull
guix package -i guix
deco start cow-store /mnt
guix system init /mnt/etc/config.scm /mnt
guix-daemon --build-users-group=guix-builder

Referencias