8000 GitHub - myme/dotfiles: My collection of dotfiles
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

myme/dotfiles

Repository files navigation

NixOS Configuration

This repository contains the NixOS system and user profile configuration files for my machines. For an overview and more thorough description, read NixOS: Confederation (myme.no).

I rarely install new machines and thus haven't really invested the time to automate this process in a good way. The steps under Installation are most likely borken or incomplete. Your best bet is to download and install NixOS following t 8000 he regular documentation, then simply build and update using nixos-rebuild switch --flake ..

Installation

Install SSH keys on machine

Use a local keyboard and mouse or remote console to start up a shell on the machine. Then add public keys as desired to .ssh/authorized_keys for remote access.

$ mkdir .ssh
$ curl -o .ssh/authorized_keys https://github.com/myme.keys

Jump into dev shell

# shorthand for `nix develop` (with --extra-experimental-features)
./dev

Copy installation files to host

The following command will prompt for one of the deploy.nodes hosts to copy the installation files to.

$ nixbs-copy

Alternatively export NIX_INSTALL_HOST in the environment to override:

$ NIX_INSTALL_HOST=10.20.30.40 nixbs-copy

SSH to remote host

$ nixbs-ssh

Drop into dev shell

$ cd nixos
$ ./dev

Format disks with disko

$ sudo disko ./machine/<hostname>/disk.nix

Start NixOS installation

Begin the installation by invoking the install script, either on console or over SSH:

$ sudo nixbs-install

The command will prompt for a system profile to install.

Post-install

Installing emacs dependencies:

$ ~/.emacs.d/bin/doom sync

After launching emacs, install all-the-icons:

(all-the-icons-install-fonts t)

Updating

$ sudo nixos-rebuild <switch|test|build> --flake .

Non-NixOS Linux / Windows Subsystem for Linux (WSL)

Install

$ nixbs-build-home <machine>
$ ./result/activate

Update

Either use the build-home.sh script above or the following once Home Manager is installed:

$ home-manager <build|switch> --flake .#<machine>

Troubleshooting

Gnome

Some dconf settings seem to not be applied correctly. Particularly the custom binding p to swith to the workspace on the left.

Running the following resolves this (but is obviously annoying):

gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-left '[]'
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-left "['<Super>p']"

About

My collection of dotfiles

Resources

Stars

Watchers

Forks

Packages

No packages published
0