mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-08-09 13:24:38 -05:00
60 lines
1.2 KiB
Nix
Executable file
60 lines
1.2 KiB
Nix
Executable file
{
|
|
flake,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
|
|
let
|
|
inherit (flake.config.machines) devices;
|
|
inherit (flake.config.services) instances;
|
|
|
|
mars = devices.mars;
|
|
deimos = devices.deimos;
|
|
hostname = config.networking.hostName;
|
|
deviceLogic = if hostname == mars.name then deimos else mars;
|
|
|
|
vpnServers = [
|
|
"CA363"
|
|
"CA220"
|
|
"CA358"
|
|
"CA627"
|
|
];
|
|
|
|
vpnCommands = lib.concatStrings (
|
|
lib.imap0 (i: server: ''
|
|
vpn${toString i}:
|
|
sudo systemctl start wg-quick-Proton-${server}.service
|
|
|
|
'') vpnServers
|
|
);
|
|
in
|
|
{
|
|
text = ''
|
|
rebuildBoot:
|
|
nixos-rebuild boot --use-remote-sudo --flake ~/Files/Projects/dotfiles#${hostname} --show-trace
|
|
|
|
rebuild:
|
|
nixos-rebuild switch --use-remote-sudo --flake ~/Files/Projects/dotfiles#${hostname} --show-trace
|
|
|
|
update:
|
|
nix flake update --flake ~/Files/Projects/dotfiles
|
|
|
|
elm:
|
|
cd ~/Files/Projects/website/frontend ; elm-land server
|
|
|
|
server:
|
|
ssh ${devices.ceres.ip.address0}
|
|
|
|
serverRemote:
|
|
ssh ${instances.web.remotehost.address0}
|
|
|
|
${deviceLogic.name}:
|
|
ssh ${deviceLogic.ip.address0}
|
|
|
|
vpnoff:
|
|
sudo systemctl stop wg-quick-Proton-*.service
|
|
|
|
${vpnCommands}
|
|
'';
|
|
}
|