From 254381bfa7dadb95bc0dd8e1047bfa97cc7419bf Mon Sep 17 00:00:00 2001 From: "Collin J. Doering" Date: Sat, 24 Feb 2024 10:07:26 -0500 Subject: [PATCH] Initial commit * .gitignore: Ignore emacs backup files * README.org: Add preliminary plan, with a few more details * balg02.scm: Placeholder file that will become guix operating-system configuration for balg02 --- .gitignore | 2 ++ README.org | 40 ++++++++++++++++++++++++++++++++++++++++ balg02.scm | 19 +++++++++++++++++++ 3 files changed, 61 insertions(+) create mode 100644 .gitignore create mode 100644 README.org create mode 100644 balg02.scm diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b8372e6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Emacs +*~ diff --git a/README.org b/README.org new file mode 100644 index 0000000..7fc6b94 --- /dev/null +++ b/README.org @@ -0,0 +1,40 @@ +#+TITLE: Guix North America +#+AUTHOR: Collin J. Doering + +#+begin_abstract +This repository contains setup and management instructions for a Guix North American Build +Farm. +#+end_abstract + +* Install Guix on debian to be used to bootstrap the Guix os installation + +Following the [[https://guix.gnu.org/manual/en/html_node/Binary-Installation.html][Binary Installation]] section from the Guix manual to install guix. + +#+begin_src shell + sudo apt update -y + sudo apt install -y guix +#+end_src + +This installs the Debian's packaged version of Guix, which likely is older then what's +available upstream. As such, update our installation of Guix (following the [[https://guix.gnu.org/manual/en/html_node/Upgrading-Guix.html][Updating Guix]] +documentation specific to foreign distros'). + +#+begin_src shell + sudo -i guix pull + sudo systemctl restart guix-daemon.service +#+end_src + +* Define Guix operating-system for the machine + +See: [[file:balg02.scm][balg02.scm]] + +* Bootstrap Guix + +Using Guix on debian, bootstrap the machine using the configuration in [[*Define Guix operating-system for the machine][Define Guix +operating-system for the machine]]. + +* Modify grub config on debian to add an additional (and default) option to chainload Guix grub + +- Add a menuitem for Guix in ~/etc/grub.d/40_custom~ +- Modify ~/etc/default/grub~ setting ~GRUB_DEFAULT=~ where ~~ is the menu item number, + starting from 0. diff --git a/balg02.scm b/balg02.scm new file mode 100644 index 0000000..37cbd27 --- /dev/null +++ b/balg02.scm @@ -0,0 +1,19 @@ +;; (C) Copyright Collin J. Doering 2024 +;; +;; This program is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + +;; File: balg02.scm +;; Author: Collin J. Doering +;; Date: Feb 24, 2024 +