No description
Find a file
2021-08-21 01:52:00 +02:00
.git-crypt Add 1 git-crypt collaborator 2019-01-16 21:24:25 +01:00
_archive nix: use lorri with direnv 2020-02-10 14:09:04 +01:00
certificates steveej-480s-work: add Satellite certificate 2019-02-04 09:25:13 +01:00
nix nix/os/devices/vmd32387.contaboserver.net: bump versions 2021-08-21 01:52:00 +02:00
services/home-ch routers: add new and adjust justfiles 2021-06-08 14:34:17 +02:00
.envrc nix: use lorri with direnv 2020-02-10 14:09:04 +01:00
.gitattributes use git-encrypt for secrets 2018-01-26 20:37:44 +01:00
.gitignore git: ignore .env file 2019-01-02 18:20:58 +01:00
.gitlab-ci.yml gitlab-ci: use custom nix-channels for CI run 2019-09-06 11:47:50 +02:00
default.nix nix: separate into multiple overlays and expose them from top-level 2019-12-06 16:06:45 +01:00
Justfile Justfile/rebuild-this-device: rename device -> devicename 2021-02-07 17:00:41 +01:00
README.md README: add more post-install steps 2020-12-22 00:51:23 +01:00
shell.nix Justfile: add uuid-to-device-name recipe 2020-12-16 10:53:51 +01:00

steveej's infra

This repository helps me to manage all computer infrastructure. This is mostly achieved with the help of Nix.

In the unlikely case that you actually read this and have any questions please don't hesitate to reach out.

Initial Roadmap

  • All graphical systems (incl. install media) must have
    • Full-disk encryption by default
    • Yubikey support with SSH auth
  • Migrate all devices to new structure
    • Encrypted Install media
    • steveej-laptop
    • steveej-laptop-work
  • Migrate home environment to new structure
    • home-manager
    • pkgs-configuration
    • development environments
  • (Semi-) automatic synchronization of important repositories
    • Modification strategy The approach is to use vcsh for the dotfiles
    • dotfiles
  • Toplevel Justfile for simple actions
    • mount/umount disks
    • install to mounted disk
    • rebuild running system
    • update running system
    • annotate recipes with some documentation
    • declare shell.nix with runtime deps
    • partition/encrypt/format disks
  • Document bootstrap process
    • a new machine
    • an install media
  • Design disaster recovery
  • Automatic synchronization of other state files - see https://gitlab.com/steveeJ/nix-expressions/issues/2
  • Recycle _archived
  • Maybe make this a nix-overlay

Bugs

  • home-manager leaves ~/.gnupg at 0755

Usage

(These are reminders for my future self)

just --list

Bootstrap

A new machine

  • ensure the dotfiles repo has a branch with the new machine's hostname

  • boot with an install media and go through setup

Post-Install Setup

  • chmod --recursive g-rwx,o-rwx ~/.gnupg
  • gpg2 --edit-card; fetch
  • clone password-manager and infra repositories
  • gpg2: ultimately trust my own key