* Tasks ** DOING Simplify the installation of NixOS *** DONE Preparation phase CLOSED: [2019-05-30 Thu 20:17] Create =burn-nixos.sh= with something like: #+BEGIN_SOURCE shell NIXOS_URL='https://releases.nixos.org/nixos/19.03/nixos-19.03.172764.50d5d73e22b/nixos-graphical-19.03.172764.50d5d73e22b-x86_64-linux.iso' burn-nixos.sh "$NIXOS_URL" /dev/sdb #+END_SOURCE *** DONE Installation phase CLOSED: [2019-06-02 Sun 02:26] **** DONE Choose proper tool CLOSED: [2019-05-31 Fri 21:40] =fdisk=? =gdisk=? =gparted=? Why? Why not? =parted= allows for CLI based interactions instead of interactive only. It also supports GPT partitions, and is a GNU project :) **** DONE Make disk partitioning declarative CLOSED: [2019-05-31 Fri 21:40] Not really declarative, but scripted instead. **** DONE Always use UEFI and GPT (which I think is better) CLOSED: [2019-05-31 Fri 21:40] **** DONE Parameterize the disk to be partitioned CLOSED: [2019-05-31 Fri 21:41] So I can give the installation script an argument and reuse later on the program. Something like: #+BEGIN_SOURCE shell $ wget -qO- https://euandre.org/install-nixos.sh | sh -s /dev/sda #+END_SOURCE **** DONE Publish =install-nixos.sh= in CI run CLOSED: [2019-05-30 Thu 23:42] Add =publishScript= derivation and run it in builds.sr.ht. **** DONE Partition, format and encrypt CLOSED: [2019-06-02 Sun 01:54] **** DONE Properly document (in README?) how to connect to the internet CLOSED: [2019-06-01 Sat 22:05] #+BEGIN_SOURCE bash wpa_supplicant -B -i wlp2s0 -c <(wpa_passphrase SSID PASSPHRASE) curl https://euandre.org/dotfiles/nixos/install.sh > install.sh chmod +x ./install.sh ./install.sh #+END_SOURCE *** DOING Setup phase **** DOING Fix =enabling= of Git Annex remotes *** DONE Document the discrete three step phases CLOSED: [2019-06-01 Sat 22:04] Put all of this on the README for future easy access. **** Steps 1. Preparing the USB stick; 2. Performing a fresh install; 3. Bootstraping the new installation's configuration and data. ** NEXT Workflow improvement *** NEXT Finish importing mailing list emails *** TODO How to simplify configuring the =ssh-agent=? https://unix.stackexchange.com/questions/90853/how-can-i-run-ssh-add-automatically-without-a-password-prompt *** TODO Automate backup.sh *** CANCELLED eCryptFS LUKS already covers most of my use case and renders eCryptFS not useful. *** DONE Automate setup of =builds.sr.ht= for other projects CLOSED: [2019-05-31 Fri 21:43] **** DONE Add =utils.nix= with common derivations CLOSED: [2019-05-30 Thu 23:16] **** CANCELLED Generate yaml from Dhall No need, =envsubst= suffice *** CANCELLED Put commit 50 characters limit See https://drewdevault.com/2019/02/25/Using-git-with-discipline.html Couldn't configure it properly right now, no impactul at all on current workflow. ** TODO Guix System *** TODO Create =burn.sh=, =install.sh= and =setup.sh= =guix= installation scripts *** TODO Consider using Btrfs? Why? Why not? *** DONE Is there a Hydra equivalent for Guix? Add it to the VPS? CLOSED: [2019-06-02 Sun 02:43] ** TODO House keeping *** TODO Remove borg content from repository *** TODO Remove encrypted files from repository *** TODO Make creation of a new shell faster Profile =bash/bashrc.sh=. *** DONE Improve README.org CLOSED: [2019-06-02 Sun 02:43] *** TODO Remove =shellcheck disable= directives * Nice to have ** TODO Test elfeed This way I can more easily link to an article from org-mode! * Fixes ** TODO Adjust layout for =annex.yml= tmuxinator template ** TODO Make xmodmap commands declarative ** TODO Open =.description= files with text editor