This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| manuals:distributions:guix [2026/08/16 18:56] – Polish documentation, localize examples and explain the one-week VPS trial aither | manuals:distributions:guix [2026/08/19 14:43] (current) – Update Guix platform inheritance and deployment examples aither | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | < | + | < |
| < | < | ||
| - | source=" | + | source=" |
| - | test="https:// | + | test=" |
| /> | /> | ||
| Line 20: | Line 20: | ||
| * ''/ | * ''/ | ||
| - | '' | + | '' |
| - | connection: it defines | + | module |
| - | which applies the network | + | base provides |
| - | The current versions of both files are available in the | + | packages, services, and network |
| + | are available in the | ||
| [[https:// | [[https:// | ||
| Line 31: | Line 32: | ||
| ===== Editing the configuration ===== | ===== Editing the configuration ===== | ||
| - | Start by editing ''/ | + | Start by editing ''/ |
| - | packages, | + | are visible there as defaults that you can change. You can also add fields such |
| - | '' | + | as '' |
| + | lookup and '' | ||
| + | remain active. | ||
| + | |||
| + | When changing services, first derive | ||
| + | '' | ||
| + | The deployment example below follows this pattern. Guix evaluates service | ||
| + | fields after loading the configuration, | ||
| + | from its temporary configuration | ||
| Activate the configuration as '' | Activate the configuration as '' | ||
| Line 109: | Line 118: | ||
| ;; Load the maintained vpsAdminOS container integration. | ;; Load the maintained vpsAdminOS container integration. | ||
| (add-to-load-path "/ | (add-to-load-path "/ | ||
| - | (use-modules | + | (use-modules (gnu) |
| - | (gnu) | + | |
| (gnu machine) | (gnu machine) | ||
| (gnu machine ssh) | (gnu machine ssh) | ||
| (gnu services base)) | (gnu services base)) | ||
| - | (use-package-modules nss ssh) | ||
| (use-service-modules ssh) | (use-service-modules ssh) | ||
| - | ;; These files belong to the machine from which you run guix deploy. | + | (let* ((platform-system |
| - | (define %controller-signing-key | + | (module-ref (resolve-interface ' |
| - | (local-file "/ | + | ' |
| - | (define %root-ssh-key | + | ;; These files belong to the machine from which you run guix deploy. |
| - | (local-file "/ | + | |
| - | + | (local-file "/ | |
| - | (define %system | + | |
| - | (operating-system | + | (local-file "/ |
| - | (host-name "guix-target" | + | ;; Build the service list before assigning the delayed services field. |
| - | (timezone " | + | |
| - | (locale " | + | (cons |
| - | (firmware '()) | + | |
| - | (initrd-modules '()) | + | guix-service-type |
| - | (kernel %ct-dummy-kernel) | + | |
| - | + | (authorized-keys | |
| - | | + | |
| - | %base-packages)) | + | |
| - | + | | |
| - | (essential-services | + | |
| - | (modify-services | + | |
| - | | + | (inherit config) |
| - | | + | (permit-root-login ' |
| - | | + | (password-authentication? |
| - | + | (authorized-keys | |
| - | (bootloader %ct-bootloader) | + | |
| - | (file-systems %ct-file-systems) | + | |
| - | + | (operating-system | |
| - | (services | + | (inherit platform-system) |
| - | | + | (host-name "guix-target" |
| - | | + | (timezone " |
| - | (openssh openssh-sans-x) | + | (locale " |
| - | (permit-root-login ' | + | |
| - | (password-authentication? | + | |
| - | (authorized-keys | + | (machine |
| - | | + | (operating-system system) |
| - | (simple-service ' | + | (environment managed-host-environment-type) |
| - | | + | (configuration |
| - | | + | |
| - | | + | ;; Replace the address and host key with those of your target VPS. |
| - | (list %controller-signing-key)))) | + | (host-name " |
| - | %ct-services)))) | + | (system " |
| - | + | (user " | |
| - | (define %machine | + | (identity "/ |
| - | (machine | + | (host-key " |
| - | (operating-system | + | (authorize? #t) |
| - | (environment managed-host-environment-type) | + | (allow-downgrades? |
| - | (configuration | + | ;; vpsAdminOS supplies the kernel and exposes a dummy /dev/null root. |
| - | | + | ;; Guix's bare-metal file-system/ |
| - | ;; Replace the address and host key with those of your target VPS. | + | (safety-checks? |
| - | (host-name " | + | (list target-machine)) |
| - | (system " | + | |
| - | (user " | + | |
| - | (identity "/ | + | |
| - | (host-key " | + | |
| - | (authorize? #t) | + | |
| - | (allow-downgrades? | + | |
| - | ;; vpsAdminOS supplies the kernel and exposes a dummy /dev/null root. | + | |
| - | ;; Guix's bare-metal file-system/ | + | |
| - | (safety-checks? | + | |
| - | + | ||
| - | (list %machine) | + | |
| </ | </ | ||