diff options
author | makefu <github@syntax-fehler.de> | 2023-07-28 22:24:15 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2023-07-28 22:24:15 +0200 |
commit | 060a8f28fa1fc648bdf66afb31a5d1efac868837 (patch) | |
tree | 2b354eacc7897365ee45244fe7a51720e0d0333f /makefu/1systems/shack-autoinstall | |
parent | cbfcc890e3b76d942b927809bf981a5fa7289e6a (diff) |
makefu: move out to own repo, add vacation-note
Diffstat (limited to 'makefu/1systems/shack-autoinstall')
-rw-r--r-- | makefu/1systems/shack-autoinstall/config.nix | 49 | ||||
-rw-r--r-- | makefu/1systems/shack-autoinstall/grub-partition.sh | 5 | ||||
-rw-r--r-- | makefu/1systems/shack-autoinstall/shack-config.nix | 231 | ||||
-rw-r--r-- | makefu/1systems/shack-autoinstall/source.nix | 3 | ||||
-rw-r--r-- | makefu/1systems/shack-autoinstall/uefi-partition.sh | 24 |
5 files changed, 0 insertions, 312 deletions
diff --git a/makefu/1systems/shack-autoinstall/config.nix b/makefu/1systems/shack-autoinstall/config.nix deleted file mode 100644 index d53c411c0..000000000 --- a/makefu/1systems/shack-autoinstall/config.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ config, pkgs, lib, ... }: - -with import <stockholm/lib>; -let - disk = "/dev/sda"; -in { - imports = [ - <stockholm/makefu> - <nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix> - <nixpkgs/nixos/modules/installer/cd-dvd/channel.nix> - <stockholm/makefu/2configs/tools/core.nix> - ]; - # TODO: NIX_PATH and nix.nixPath are being set by default.nix right now - # cd ~/stockholm ; nix-build -A config.system.build.isoImage -I nixos-config=makefu/1systems/iso.nix -I secrets=/home/makefu/secrets/iso /var/src/nixpkgs/nixos - krebs.build.host = config.krebs.hosts.iso; - krebs.hidden-ssh.enable = true; - - environment.extraInit = '' - EDITOR=vim - ''; - # iso-specific - boot.kernelParams = [ "copytoram" ]; - - - environment.systemPackages = [ - pkgs.parted - ( pkgs.writeScriptBin "shack-install" '' - #! /bin/sh - echo "go ahead and try NIX_PATH=/root/.nix-defexpr/channels/ nixos-install" - '') - ]; - - systemd.services.wpa_supplicant.wantedBy = lib.mkForce [ "multi-user.target" ]; - - networking.wireless = { - enable = true; - networks.shack.psk = "welcome2shack"; - }; - - - services.openssh = { - enable = true; - hostKeys = [ - { bits = 8192; type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; } - ]; - }; - # enable ssh in the iso boot process - systemd.services.sshd.wantedBy = lib.mkForce [ "multi-user.target" ]; -} diff --git a/makefu/1systems/shack-autoinstall/grub-partition.sh b/makefu/1systems/shack-autoinstall/grub-partition.sh deleted file mode 100644 index c23c89799..000000000 --- a/makefu/1systems/shack-autoinstall/grub-partition.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -set -euf -parted -s ${disk} mklabel msdos -parted -s ${disk} -- mkpart primary linux-swap 1M 4096M -parted -s ${disk} -- mkpart primary ext2 4096M 100% diff --git a/makefu/1systems/shack-autoinstall/shack-config.nix b/makefu/1systems/shack-autoinstall/shack-config.nix deleted file mode 100644 index 9fa54ae32..000000000 --- a/makefu/1systems/shack-autoinstall/shack-config.nix +++ /dev/null @@ -1,231 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - imports = [ - ./hardware-configuration.nix - # TODO: - ]; - - # shacks-specific - networking.wireless = { - enable = true; - networks.shack.psk = "181471eb97eb23f12c6871227bc4a7b13c8f6af56dcc0d0e8b71f4d7a510cb4e"; - }; - networking.hostName = "shackbook"; - - boot.tmpOnTmpfs = true; - - users.users.shack = { - createHome = true; - useDefaultShell = true; - home = "/home/shack"; - uid = 9001; - packages = with pkgs;[ - chromium - firefox - ]; - extraGroups = [ "audio" "wheel" ]; - hashedPassword = "$6$KIxlQTLEnKl7cwC$LrmbwZ64Mlm7zqUUZ0EObPJMES3C0mQ6Sw7ynTuXzUo7d9EWg/k5XCGkDHMFvL/Pz19Awcv0knHB1j3dHT6fh/" ; - }; - - environment.variables = let - ca-bundle = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; - in { - EDITOR = lib.mkForce "vim"; - CURL_CA_BUNDLE = ca-bundle; - GIT_SSL_CAINFO = ca-bundle; - SSL_CERT_FILE = ca-bundle; - }; - - services.printing = { - enable = true; - # TODO: shack-printer - }; - - - environment.systemPackages = with pkgs;[ - parted - ddrescue - tmux - jq git gnumake htop rxvt_unicode.terminfo - (pkgs.vim_configurable.customize { - name = "vim"; - vimrcConfig.customRC = '' - set nocompatible - syntax on - set list - set listchars=tab:▸\ - "set list listchars=tab:>-,trail:.,extends:> - - filetype off - filetype plugin indent on - - colorscheme darkblue - set background=dark - - set number - set relativenumber - set mouse=a - set ignorecase - set incsearch - set wildignore=*.o,*.obj,*.bak,*.exe,*.os - set textwidth=79 - set shiftwidth=2 - set expandtab - set softtabstop=2 - set shiftround - set smarttab - set tabstop=2 - set et - set autoindent - set backspace=indent,eol,start - - - inoremap <F1> <ESC> - nnoremap <F1> <ESC> - vnoremap <F1> <ESC> - - nnoremap <F5> :UndotreeToggle<CR> - set undodir =~/.vim/undo - set undofile - "maximum number of changes that can be undone - set undolevels=1000000 - "maximum number lines to save for undo on a buffer reload - set undoreload=10000000 - - nnoremap <F2> :set invpaste paste?<CR> - set pastetoggle=<F2> - set showmode - - set showmatch - set matchtime=3 - set hlsearch - - autocmd ColorScheme * highlight ExtraWhitespace ctermbg=red guibg=red - - - " save on focus lost - au FocusLost * :wa - - autocmd BufRead *.json set filetype=json - au BufNewFile,BufRead *.mustache set syntax=mustache - - cnoremap SudoWrite w !sudo tee > /dev/null % - - " create Backup/tmp/undo dirs - set backupdir=~/.vim/backup - set directory=~/.vim/tmp - - function! InitBackupDir() - let l:parent = $HOME . '/.vim/' - let l:backup = l:parent . 'backup/' - let l:tmpdir = l:parent . 'tmp/' - let l:undodir= l:parent . 'undo/' - - - if !isdirectory(l:parent) - call mkdir(l:parent) - endif - if !isdirectory(l:backup) - call mkdir(l:backup) - endif - if !isdirectory(l:tmpdir) - call mkdir(l:tmpdir) - endif - if !isdirectory(l:undodir) - call mkdir(l:undodir) - endif - endfunction - call InitBackupDir() - - augroup Binary - " edit binaries in xxd-output, xxd is part of vim - au! - au BufReadPre *.bin let &bin=1 - au BufReadPost *.bin if &bin | %!xxd - au BufReadPost *.bin set ft=xxd | endif - au BufWritePre *.bin if &bin | %!xxd -r - au BufWritePre *.bin endif - au BufWritePost *.bin if &bin | %!xxd - au BufWritePost *.bin set nomod | endif - augroup END - ''; - vimrcConfig.vam.knownPlugins = pkgs.vimPlugins; - vimrcConfig.vam.pluginDictionaries = [ - { names = [ "undotree" ]; } - # vim-nix handles indentation better but does not perform sanity - { names = [ "vim-addon-nix" ]; ft_regex = "^nix\$"; } - ]; - }) - - ]; - programs.bash = { - enableCompletion = true; - interactiveShellInit = '' - HISTCONTROL='erasedups:ignorespace' - HISTSIZE=900001 - HISTFILESIZE=$HISTSIZE - shopt -s checkhash - shopt -s histappend histreedit histverify - shopt -s no_empty_cmd_completion - PS1='\[\e[1;32m\]\w\[\e[0m\] ' - ''; - }; - - services.journald.extraConfig = '' - SystemMaxUse=1G - RuntimeMaxUse=128M - ''; - nix = { - package = pkgs.nixUnstable; - optimise.automatic = true; - useSandbox = true; - gc.automatic = true; - }; - - system.autoUpgrade.enable = true; - - boot.loader.grub.enable = true; - boot.loader.grub.version = 2; - boot.loader.grub.device = "/dev/sda"; - fileSystems."/".options = [ "noatime" "nodiratime" "discard" ]; - - - # gui and stuff - i18n = { - consoleFont = "Lat2-Terminus16"; - consoleKeyMap = "us"; - defaultLocale = "en_US.UTF-8"; - }; - - fonts = { - enableFontDir = true; - enableGhostscriptFonts = true; - fonts = [ pkgs.terminus_font ]; - }; - - time.timeZone = "Europe/Berlin"; - services.timesyncd.enable = true; - - - # GUI - hardware.pulseaudio.enable = true; - services.xserver = { - enable = true; - displayManager.auto.enable = true; - displayManager.auto.user = "shack"; - - desktopManager.xfce.enable = true; - - layout = "us"; - xkbVariant = "altgr-intl"; - xkbOptions = "ctrl:nocaps, eurosign:e"; - }; - - services.openssh = { - enable = true; - hostKeys = [ - { bits = 8192; type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; } - ]; - }; -} diff --git a/makefu/1systems/shack-autoinstall/source.nix b/makefu/1systems/shack-autoinstall/source.nix deleted file mode 100644 index 6bef8ada9..000000000 --- a/makefu/1systems/shack-autoinstall/source.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - name="iso"; -} diff --git a/makefu/1systems/shack-autoinstall/uefi-partition.sh b/makefu/1systems/shack-autoinstall/uefi-partition.sh deleted file mode 100644 index 4566b7dce..000000000 --- a/makefu/1systems/shack-autoinstall/uefi-partition.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -set -euf -p(){ - parted -s ${disk} -- $@ -} -p mklabel gpt -p mkpart primary fat32 1M 551M -p set 1 boot on -p mkpart primary linux-swap 51M 4647M -p mkpart primary ext2 4647M 100% -udevadm settle -mkfs.fat -nboot -F32 /dev/sda1 - -udevadm settle -mkswap ${disk}2 -L swap -swapon -L swap -mkfs.ext4 -L nixos ${disk}3 -mount LABEL=nixos /mnt -mkdir /mnt/boot -mount LABEL=boot /mnt/boot - -mkdir -p /mnt/etc/nixos -cp ${./shack-config.nix} /mnt/etc/nixos/configuration.nix -nixos-generate-config --root /mnt |