Working on the init script for setting up the remote backup server
This commit is contained in:
parent
1bbdf01a2e
commit
aa2dda3bf7
1 changed files with 24 additions and 5 deletions
|
@ -1,5 +1,8 @@
|
||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
head /etc/os-release -n 1 | grep 'NixOS$'; test $? -eq 1; is_nixos=$?
|
||||||
|
head /etc/os-release -n 1 | grep 'Arch Linux'; test $? -eq 1; is_arch_linux=$?
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# NOTE: run this from inside a Linux installation, not from the live USB/CD
|
# NOTE: run this from inside a Linux installation, not from the live USB/CD
|
||||||
|
@ -63,11 +66,28 @@ setup_dotfiles() {
|
||||||
./bin/setup-dotfiles
|
./bin/setup-dotfiles
|
||||||
}
|
}
|
||||||
|
|
||||||
|
distro_specific_root_setup() {
|
||||||
|
if test $is_nixos -eq 1 then
|
||||||
|
symlink_nixos "$root_home$dotfiles/env/nix/"
|
||||||
|
add_unstable_channel
|
||||||
|
nixos-rebuild switch
|
||||||
|
elif test $is_arch_linux -eq 1
|
||||||
|
# TODO: install any necessary packages for remaining setup portion
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
distro_specific_user_setup() {
|
||||||
|
if test $is_nixos -eq 1 then
|
||||||
|
FUNC=$(declare -f symlink_nixos)
|
||||||
|
sudo sh -c "$FUNC; symlink_nixos \"$daniel_home$dotfiles/env/nix/\""
|
||||||
|
elif test $is_arch_linux -eq 1
|
||||||
|
# TODO: setup all the things
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
init_for_root() {
|
init_for_root() {
|
||||||
clone_dotfiles "$root_home$dotfiles"
|
clone_dotfiles "$root_home$dotfiles"
|
||||||
symlink_nixos "$root_home$dotfiles/env/nix/"
|
distro_specific_setup
|
||||||
add_unstable_channel
|
|
||||||
nixos-rebuild switch
|
|
||||||
chown daniel:users "$daniel_home"
|
chown daniel:users "$daniel_home"
|
||||||
echo "Re-running as user daniel..."
|
echo "Re-running as user daniel..."
|
||||||
sudo --user daniel "$root_home$dotfiles/init.sh"
|
sudo --user daniel "$root_home$dotfiles/init.sh"
|
||||||
|
@ -76,8 +96,7 @@ init_for_root() {
|
||||||
init_for_daniel() {
|
init_for_daniel() {
|
||||||
clone_dotfiles "$daniel_home$dotfiles"
|
clone_dotfiles "$daniel_home$dotfiles"
|
||||||
generate_ssh_key
|
generate_ssh_key
|
||||||
FUNC=$(declare -f symlink_nixos)
|
distro_specific_user_setup
|
||||||
sudo sh -c "$FUNC; symlink_nixos \"$daniel_home$dotfiles/env/nix/\""
|
|
||||||
setup_wallpaper
|
setup_wallpaper
|
||||||
# TODO: setup ssh/gpg keys
|
# TODO: setup ssh/gpg keys
|
||||||
# TODO: setup password store
|
# TODO: setup password store
|
||||||
|
|
Reference in a new issue