summaryrefslogtreecommitdiff
path: root/README.md
blob: 57922c37c2f8d2c246bcc21efb53f30bf2a7882b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Guix Installation

## Installing Guix

### New Instructions

- Boot from Bootable media
- Setup network and partitions with graphical installer
- bail out before installation, go to terminal
    - mount cow-store using `herd start cow-store /mnt`
    - download latest personal config
    - add authorization keys
    - use guix time-machine with `env GUILE_LOAD_PATH='' GUILD_LOAD_COMPILED_PATH='' ...` to init system
    - place copy of config in /mnt to copy over later. MAKE SURE TO INCLUDE .git FOLDER!!
    - reboot into new system
- assign root and ryan pw
- login to ryan
    - place config into ~/.config/guix
    - run `guix pull -C ~/.config/guix/channels.scm`
    - run `sudo -E guix system -L ~/.config/guix/modules reconfigure ...`
    - run `guix home -L ~/.config/guix/modules reconfigure ...`
    - run `nix run --no-write-lock-file github:nix-community/home-manager/ -- --flake ".#$USER" switch`
- you may have a system now

### Instructions (old, for reference)

- Create USB with Guix installation image
- Boot and create partitions using graphical installer
- Bail out right before installation begins, go to terminal
    - Mount cow-store using herd start cow-store /mnt
    - Download latest version of configuration using `curl -o main.tar.gz --insecure --follow https://git.ryanserver.home.arpa/ryan77627/guix-config/archive/main.tar.gz` and unpack using tar
    - Authorize nonguix channel using `curl -o signkey.pub https://substitutes.nonguix.org/signing-key.pub and guix archive --authorize < signkey.pub`
    - Modify/add system config for system and initialize using `guix time-machine -C channels.scm -- system -L modules/ --substitute-urls='https://bordeaux.guix.gnu.org https://ci.guix.gnu.org https://substitutes.nonguix.org' init system.scm /mnt`
    - When installed, proceed
- Reboot into system, assign root and ryan user a password
- Setup system completely
    - Clone guix-config to proper location
    - Reconfigure system
        - `sudo -E guix time-machine -C channels.scm -- system -L modules reconfigure system.scm` <---- may not be needed
        - `guix pull`
        - `hash guix`
        - `sudo guix system -L modules reconfigure system.scm`
    - Configure GUIX Home
        - Install Nix Home Manager
        - May need to sudo herd restart nix-daemon or reconfigure system to get nix working???
        - `nix-channel --update`
        - `nix-shell '<home-manager>' -A install`
        - `home-manager switch`
- Everything should now be set up and ready to use :)