Compare commits

..

No commits in common. "a3721b311e8aabbebfab76088f8279f2ea3499b5" and "6bf38b7814aef843595efbf2d53b983e25143236" have entirely different histories.

9 changed files with 48 additions and 75 deletions

View file

@ -8,6 +8,10 @@ in {
tags = [ "local" ]; tags = [ "local" ];
}; };
nixpkgs.config.packageOverrides = pkgs: {
agenix = (import "${sources.agenix}" { inherit pkgs; }).agenix;
};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
agenix agenix
colmena colmena

View file

@ -3,13 +3,9 @@
{ {
deployment = { deployment = {
targetHost = "${name}.birdsong.network"; targetHost = "${name}.birdsong.network";
targetUser = "qenya";
tags = [ "remote" ]; tags = [ "remote" ];
}; };
# Required for remote builds
security.sudo.wheelNeedsPassword = false;
imports = [ imports = [
../common/openssh.nix ../common/openssh.nix
]; ];

View file

@ -12,4 +12,9 @@
services.fail2ban.enable = true; services.fail2ban.enable = true;
networking.firewall.allowedTCPPorts = [ 22 ]; networking.firewall.allowedTCPPorts = [ 22 ];
# Allow remote root login only from home network
# TODO: Find a less hacky way of doing remote deployment
users.users.root.openssh.authorizedKeys.keys = config.users.users.qenya.openssh.authorizedKeys.keys;
services.openssh.extraConfig = "Match Address 45.14.17.200\n PermitRootLogin prohibit-password";
} }

View file

@ -1,5 +0,0 @@
{ config, lib, pkgs,... }:
{
security.sudo.execWheelOnly = true;
}

View file

@ -6,24 +6,12 @@ in {
deployment.replaceUnknownProfiles = false; deployment.replaceUnknownProfiles = false;
networking.hostName = name; networking.hostName = name;
nixpkgs.config = { nixpkgs.config.allowUnfree = true;
allowUnfree = true;
packageOverrides = pkgs: {
agenix = (import sources.agenix { inherit pkgs; }).agenix;
vscode-extensions = (import sources.nix-vscode-extensions).extensions.x86_64-linux; # TODO: This should check the host architecture
};
};
home-manager = {
useUserPackages = true;
useGlobalPkgs = true;
};
imports = [ imports = [
(import "${sources.home-manager}/nixos") (import "${sources.home-manager}/nixos")
(import "${sources.agenix}/modules/age.nix") (import "${sources.agenix}/modules/age.nix")
./pinning.nix ./pinning.nix
./common/sudo.nix
./common/utilities.nix ./common/utilities.nix
./users/qenya.nix ./users/qenya.nix
]; ];

View file

@ -1,15 +1,22 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
programs.vscode = { programs.vscode =
let
system = builtins.currentSystem;
sources = import ../npins;
extensions = (import sources.nix-vscode-extensions).extensions.${system};
in
{
enable = true; enable = true;
enableExtensionUpdateCheck = false; enableExtensionUpdateCheck = false;
enableUpdateCheck = false; enableUpdateCheck = false;
package = pkgs.vscodium; package = pkgs.vscodium;
extensions = (with pkgs.vscode-extensions; [ extensions = (with pkgs.vscode-extensions; [
open-vsx.jnoortheen.nix-ide jnoortheen.nix-ide
open-vsx.ms-python.python ms-python.python
open-vsx.robbowen.synthwave-vscode ]) ++ (with extensions.open-vsx; [
robbowen.synthwave-vscode
]); ]);
mutableExtensionsDir = false; mutableExtensionsDir = false;
userSettings = { userSettings = {

View file

@ -7,7 +7,6 @@
./home.nix ./home.nix
../../common/fonts.nix ../../common/fonts.nix
../../common/gaming.nix ../../common/gaming.nix
./syncthing.nix
]; ];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;

View file

@ -28,16 +28,6 @@
fsType = "zfs"; fsType = "zfs";
}; };
fileSystems."/config" =
{ device = "rpool/config";
fsType = "zfs";
};
fileSystems."/data" =
{ device = "rpool/data";
fsType = "zfs";
};
fileSystems."/home" = fileSystems."/home" =
{ device = "rpool/home"; { device = "rpool/home";
fsType = "zfs"; fsType = "zfs";
@ -49,13 +39,18 @@
options = [ "fmask=0022" "dmask=0022" ]; options = [ "fmask=0022" "dmask=0022" ];
}; };
fileSystems."/data" =
{ device = "rpool/data";
fsType = "zfs";
};
fileSystems."/data/steam" = fileSystems."/data/steam" =
{ device = "rpool/data/steam"; { device = "rpool/data/steam";
fsType = "zfs"; fsType = "zfs";
}; };
fileSystems."/data/syncthing" = fileSystems."/config" =
{ device = "rpool/data/syncthing"; { device = "rpool/config";
fsType = "zfs"; fsType = "zfs";
}; };

View file

@ -1,16 +0,0 @@
{ config, lib, pkgs, ... }:
{
services.syncthing = {
enable = true;
user = "qenya";
dataDir = "/data/syncthing";
overrideDevices = true;
overrideFolders = true;
settings = {
devices = {
"kilgharrah" = { id = "RDT7IGD-76FZ6LY-37PPB2W-DWPQRPR-LZ4AXF7-4GIIHYJ-RVXUUSG-ZXPN3AZ"; };
};
};
};
}