Commit graph

90 commits

Author SHA1 Message Date
037cde820e
trisquel-automatic-netinstall-qemu: README: Update to Trisquel 11.0.1.
I forgot to update the README as well in the commit
fed7db636e
("trisquel-automatic-netinstall-qemu: Update to Trisquel 11.0.1.").

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-09-16 01:40:01 +02:00
fed7db636e
trisquel-automatic-netinstall-qemu: Update to Trisquel 11.0.1.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-09-14 13:59:02 +02:00
858988e801
trisquel-automatic-netinstall-qemu: make mirror/http/proxy configurable.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-08-25 22:42:16 +02:00
3785148831
trisquel-automatic-netinstall-qemu: fix typo.
Without that fix the rootfs.img is empty.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-08-08 23:19:11 +02:00
b4faf2a967
Really fix -cpu host issue with KVM.
The commit b264ddedb1
("trisquel-automatic-netinstall-qemu: Fix -cpu host without KVM.")
only contained part of the fix.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-08-06 20:23:43 +02:00
b264ddedb1
trisquel-automatic-netinstall-qemu: Fix -cpu host without KVM.
Without that fix, when KVM is disabled, we have the following:
    qemu-system-x86_64: CPU model 'host' requires KVM or HVF
and since HVF is only available on MacOS[1], and that MacOS is nonfree
we won't be using it when KVM isn't available.

[1]https://www.qemu.org/docs/master/system/introduction.html

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-08-06 18:35:41 +02:00
7c66aaa96f
trisquel-automatic-netinstall-qemu: use -cpu host.
This should improve the performances a bit as this mostly pass through
the host CPU, and so the VM can benefit from some of the more advanced
CPU features. Depending on the CPU and host configuration, it can also
enable other features as well like nested KVM.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-08-06 18:25:10 +02:00
2d2dd5d426
trisquel-automatic-netinstall-qemu: document deployments on libre en communs physical machines.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-21 22:03:55 +02:00
b9abe6c2b3
trisquel-automatic-netinstall-qemu: Reduce storage usage.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-06 03:04:46 +02:00
37201a9361
trisquel-automatic-netinstall-qemu: Reduce memory usage.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-05 16:27:44 +02:00
8e804b6b21
trisquel-automatic-netinstall-qemu: align preseed response values.
Some 'string' were aligned with the di-question. In addition I also
separated the response type and values in a different column to make
it easier to detect this kind of mistakes.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 15:48:35 +02:00
32b17e3f7d
trisquel-netinstall: move scripts inside the Makefile
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 03:00:03 +02:00
7d89a710c6
trisquel-manual-netinstall-lxc: Remove unused Trisquel iso.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 02:53:33 +02:00
1feb087515
README: clarify software heritage backups
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 02:47:13 +02:00
5ab7f768d6
audio.experimental.a-lec.org: use Guix for autogen.sh
The target server (anthea) where the images will now be deployed
doesn't have autoconf, automake and m4 installed.

Because of that we work around by using the Guix versions.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 02:45:59 +02:00
647e421c21
Add trisquel-automatic-netinstall-qemu.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-04 01:06:49 +02:00
e7bda3409d
Rename to trisquel-install-guix-fai and clarify usage.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-02 18:26:28 +02:00
a458f0f005
Rename to trisquel-manual-netinstall-lxc.
This should make it more clear that the netinstall is to be done
manually and that it works with libvirt LXC.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-07-02 18:17:45 +02:00
f88a1f1672
Makefile.am: build: fix mumble-vm-system.scm update.
This was introduced by commit 390d56eedb
("audio.experimental.a-lec.org: Makefile.am: add target for guix
build.").

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-04-21 22:11:28 +02:00
3b5d0f4d3e
audio.experimental.a-lec.org: fix website build.
Without that fix we have the following with guix
65e8472a4b6fc6f66871ba0dad518b7d4c63595e ("system: Remove nss-certs
from OS templates, adjust doc."):
    building /gnu/store/qcf2709aq1nzh709fg2jvdq56diw75rd-website-0.1.drv...
    Backtrace:
    In guix/store.scm:
      1409:13 19 (map/accumulate-builds #<store-connection 256.100 7f15…> …)
      1384:11 18 (map/accumulate-builds #<store-connection 256.100 7f15…> …)
       1302:8 17 (call-with-build-handler #<procedure 7f15cec04f00 at g…> …)
      2182:25 16 (run-with-store #<store-connection 256.100 7f15d0fd8140> …)
    In guix/gexp.scm:
       1205:2 15 (_ _)
       1072:2 14 (_ _)
        913:4 13 (_ _)
    In guix/store.scm:
      2067:12 12 (_ #<store-connection 256.100 7f15d0fd8140>)
      1409:13 11 (map/accumulate-builds #<store-connection 256.100 7f15…> …)
      1384:11 10 (map/accumulate-builds #<store-connection 256.100 7f15…> …)
       1302:8  9 (call-with-build-handler #<procedure 7f15cec04ea0 at g…> …)
      2182:25  8 (run-with-store #<store-connection 256.100 7f15d0fd8140> …)
    In guix/gexp.scm:
       918:13  7 (_ _)
    In guix/store.scm:
       2010:8  6 (_ _)
    In guix/gexp.scm:
       299:22  5 (_ _)
    In guix/store.scm:
       2010:8  4 (_ _)
      2054:38  3 (_ #<store-connection 256.100 7f15d0fd8140>)
    In guix/grafts.scm:
        336:4  2 (graft-derivation _ _ _ #:guile _ #:outputs _ #:system _)
    In ice-9/boot-9.scm:
      1685:16  1 (raise-exception _ #:continuable? _)
      1685:16  0 (raise-exception _ #:continuable? _)

    ice-9/boot-9.scm:1685:16: In procedure raise-exception:
    Throw to key `match-error' with args `("match" "no matching pattern" ())'.
    install: missing destination file operand after 'mumble-vm.img'
    Try 'install --help' for more information.
    make: *** [Makefile:707: mumble-vm.img] Error 1

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-04-21 22:04:24 +02:00
390d56eedb
audio.experimental.a-lec.org: Makefile.am: add target for guix build.
This enables to test if modifications have guile syntax error way more
rapidely, and by using way less space than with full images.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-04-21 22:03:08 +02:00
524a9abb28
Add script to change the keyboard layout.
Personally I'm used to the US keyboard, but Libre En Communs has other
sysadmins than me and they might want to use their preferred keyboard
layout instead.

This script has been tested on a Guix system installation.

Finding a way to launch the script at boot will be done later on.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2024-04-21 21:22:57 +02:00
9cb75f6744
netinstall: Document use-serial-port.sh script
Where to find the values is probably not evident for everybody.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-09 23:41:51 +02:00
e57977a323
trisquel-guix-installer.experimental.a-lec.org: Add VM definition
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-08 01:04:03 +02:00
9b6bb264d0
trisquel-guix-installer.experimental.a-lec.org: Add hostname
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-08 01:03:47 +02:00
59dba6efc2
Rename Trisquel Guix installer
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-08 00:37:59 +02:00
241505c33b
gnutoo-trisquel-installer: Add screen
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 06:52:32 +02:00
952f043c1e
Add top level README
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 06:51:45 +02:00
3d35226410
gnutoo-trisquel-installer: Add dependencies for installing Guix and the FAI tarball
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 06:48:11 +02:00
b2fe6d551d
Add gnutoo-trisquel-netinstall VM
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 06:14:32 +02:00
bc0b5e1dad
gnutoo-trisquel-installer: Use guix installer.
In Trisquel 11, we have Guix 1.3.0, and with that, guix pull fails.

I used the guix-install.sh script from Guix 1.4.0 and verified its
integrity through the Parabola PCR package for it.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 05:20:54 +02:00
dcb3a7cb72
gnutoo-trisquel-installer: Add SSH configuration
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 05:10:56 +02:00
9d3aad54fa
gnutoo-trisquel-installer: Add network settings
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 05:02:10 +02:00
6ff145857d
gnutoo-trisquel-installer: Add Makefile
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 04:58:20 +02:00
791164c50a
guix-installer-vm: remove duplicated .gitignore
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 03:42:46 +02:00
1afcc59c95
gnutoo-trisquel-installer: Add minimal FAI config
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 03:41:44 +02:00
4937beac06
Bring in the guix-installer-vm.
Having several VM inside the same repository could help as some of the
fixes between the two repositories are extremely similar and could be
done in the same commit.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-07 01:42:12 +02:00
2d58c051a7
Move VM into subdirectory
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-06 01:04:29 +02:00
858c70fcd5
Automatic updates: restart basic daemons
By default only mcron is restarted. It was verified within the
guix-installer-vm that this change worked by looking at the pid of
guix-daemon, waiting for an automatic update to happen and looking at
the (new) pid of guix-daemon.

The mumble-server and nginx daemons were not added to the list because
we don't have the audio.experimental.a-lec.org domain setup yet in the
Libre en Communs DNS.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 16:04:04 +02:00
e18c55b064
Automatic updates: schedule it every hours.
This enables easier testing and updates typically takes less than one
hour.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 16:01:25 +02:00
a8e16c12d9
networking: Fix IPv6 gateway
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:17:44 +02:00
0b1b9b15f5
networking: update the SSH VM public key
This uses the public key of the deployed VM.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:14:20 +02:00
49c9a6f0ee
first-boot.sh: resize filesystem and add better status reporting.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:04 +02:00
bd5799967f
Add base64 tarball target
The tarball can be copied to the VM through the serial port with the
following command:
    # cat > mumble-vm.tar.xz.b64
the user then pastes the base64 content and types ctrl+d and this
results in the file being written.

The content can then be extracted with the following commands:
    # base64 -d mumble-vm.tar.xz.b64 > mumble-vm.tar.xz
    # tar xf mumble-vm.tar.xz

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:04 +02:00
aa3f17d69c
configure.ac: vm-ipv6-gateway: Fix copy-paste error in help
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:04 +02:00
8c09af074b
Fix IPv4 netmask
Running dhclient on eth0 gives a /16, and this is necessary anyway to
reach the gateway.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:04 +02:00
0bee712a15
Add nss-certs
We at least need nss-certs for running guix system reconfigure
manually, so it's a good idea to have it.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:04 +02:00
7b663f9813
Fix automatic updates
According to the operating-system-file fileld of
unattended-upgrade-configuration in the manual, automatic updates
don't work when "/run/current-system/configuration.scm [...] refers to
extra files (SSH public keys, extra configuration files, etc.) via
local-file and similar constructs.".

So we need these files in the store and to point to them to make the
automatic updates work.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:03 +02:00
61c1a2da98
Provide the service source code on the web page
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:03 +02:00
026cbbd453
Add default id_ed25519.pub and signing-key.pub
This makes it easier to deploy the VM to the Libre En Communs
infrastructure as it doesn't require to also copy these files to the
VM producing the image.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-10-03 15:08:02 +02:00