Separate system from home-manager again
This commit is contained in:
+4
-4
@@ -29,8 +29,8 @@ default:
|
||||
- IMG:
|
||||
- img-bitwarden
|
||||
script:
|
||||
- nix run "nixpkgs#podman" login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
|
||||
- nix run "nixpkgs#podman" -- login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
|
||||
- nix build ".#${IMG}"
|
||||
- nix run "nixpkgs#podman" load -i result
|
||||
- nix run "nixpkgs#podman" tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/ci-images/${IMG}:latest"
|
||||
- nix run "nixpkgs#podman" push "$CI_REGISTRY/greg/ci-images/${IMG}:latest"
|
||||
- nix run "nixpkgs#podman" -- load -i result
|
||||
- nix run "nixpkgs#podman" -- tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/ci-images/${IMG}:latest"
|
||||
- nix run "nixpkgs#podman" -- push "$CI_REGISTRY/greg/ci-images/${IMG}:latest"
|
||||
|
||||
@@ -1,17 +1,9 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [ ../baseline.nix ];
|
||||
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
users."${config.system.primaryUser}" = import ../../home/home.nix;
|
||||
extraSpecialArgs = {
|
||||
inherit (config.users.users."${config.system.primaryUser}") home;
|
||||
gnome = false;
|
||||
gui = false;
|
||||
};
|
||||
};
|
||||
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
fonts.packages = with pkgs; [
|
||||
dejavu_fonts
|
||||
nerd-fonts.hack
|
||||
@@ -57,7 +49,7 @@
|
||||
};
|
||||
screencapture = {
|
||||
include-date = true;
|
||||
location = "${config.home-manager.extraSpecialArgs.home}/Photos/Screeneries";
|
||||
location = "~/Photos/Screeneries";
|
||||
};
|
||||
trackpad = {
|
||||
Dragging = false;
|
||||
+4
-2
@@ -14,8 +14,8 @@ let
|
||||
top.darwin.lib.darwinSystem {
|
||||
inherit system;
|
||||
specialArgs = {
|
||||
inherit nixpkgs overlays top;
|
||||
inherit (top) self;
|
||||
inherit nixpkgs;
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
@@ -28,7 +28,9 @@ let
|
||||
};
|
||||
}
|
||||
hm.darwinModules.home-manager
|
||||
top.self.modules.darwinModule
|
||||
# Local changes
|
||||
../modules/nix-conf.nix
|
||||
./baseline.nix
|
||||
] ++ lib.optionals (builtins.pathExists ./hosts/${name}) [ ./hosts/${name} ];
|
||||
};
|
||||
in
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
./direnv.nix
|
||||
./git.nix
|
||||
./ssh.nix
|
||||
./vim.nix
|
||||
./vim
|
||||
./xonsh.nix
|
||||
];
|
||||
}
|
||||
@@ -10,7 +10,7 @@
|
||||
fonts.fontconfig.enable = true;
|
||||
home.packages = with pkgs.nerd-fonts; [ hack ];
|
||||
|
||||
programs.nixvim = (import ./vim/config.nix { inherit config pkgs lib; }) // {
|
||||
programs.nixvim = (import ./config.nix { inherit config pkgs lib; }) // {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
+22
-22
@@ -1,27 +1,26 @@
|
||||
{ top, overlays, ... }:
|
||||
|
||||
rec {
|
||||
greghellings =
|
||||
{
|
||||
overlays,
|
||||
top,
|
||||
...
|
||||
}:
|
||||
let
|
||||
pkgs =
|
||||
system:
|
||||
(import top.nixunstable {
|
||||
inherit system overlays;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
allowUnfreePredicate = _: true;
|
||||
};
|
||||
});
|
||||
ivr =
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = (
|
||||
import top.nixunstable {
|
||||
inherit system overlays;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
allowUnfreePredicate = _: true;
|
||||
};
|
||||
}
|
||||
);
|
||||
system = "aarch64-darwin";
|
||||
in
|
||||
top.hmunstable.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
pkgs = pkgs system;
|
||||
modules = [
|
||||
(import ../modules/nix-conf.nix {
|
||||
inherit pkgs;
|
||||
inherit (pkgs) lib;
|
||||
cache = false;
|
||||
})
|
||||
../modules/nix-conf.nix
|
||||
./home.nix
|
||||
];
|
||||
extraSpecialArgs = {
|
||||
@@ -33,6 +32,7 @@ rec {
|
||||
username = "gregory.hellings";
|
||||
};
|
||||
};
|
||||
|
||||
"gregory.hellings" = greghellings;
|
||||
in
|
||||
{
|
||||
inherit ivr;
|
||||
}
|
||||
|
||||
+11
-9
@@ -9,18 +9,12 @@
|
||||
{
|
||||
imports = [
|
||||
top.nixvimunstable.homeManagerModules.nixvim
|
||||
./modules
|
||||
top.self.modules.homeManagerModule
|
||||
./baseline
|
||||
] ++ lib.optionals (builtins.pathExists ./hosts/${host}) [ ./hosts/${host} ];
|
||||
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
keyMode = "vi";
|
||||
terminal = "xterm-256color";
|
||||
customPaneNavigationAndResize = true;
|
||||
extraConfig = (lib.strings.concatStringsSep "\n" [ "bind P paste-buffer" ]);
|
||||
};
|
||||
|
||||
home.stateVersion = "25.05";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
copier
|
||||
diffutils
|
||||
@@ -43,4 +37,12 @@
|
||||
wget
|
||||
zip
|
||||
];
|
||||
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
keyMode = "vi";
|
||||
terminal = "xterm-256color";
|
||||
customPaneNavigationAndResize = true;
|
||||
extraConfig = (lib.strings.concatStringsSep "\n" [ "bind P paste-buffer" ]);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ in
|
||||
greg = {
|
||||
development = true;
|
||||
gui = true;
|
||||
nix.cache = false;
|
||||
pypackage.enable = false;
|
||||
vscodium = true;
|
||||
};
|
||||
|
||||
@@ -0,0 +1,218 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
overlays,
|
||||
pkgs,
|
||||
self,
|
||||
top,
|
||||
...
|
||||
}:
|
||||
let
|
||||
builderHosts =
|
||||
if self != null then
|
||||
(lib.attrNames (
|
||||
lib.filterAttrs (_: v: v.config.greg.remote-builder.enable) self.nixosConfigurations
|
||||
))
|
||||
else
|
||||
[ ];
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./nix-conf.nix
|
||||
];
|
||||
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
agenix
|
||||
bitwarden-cli
|
||||
bmon
|
||||
btop
|
||||
btrfs-progs
|
||||
coreutils-full
|
||||
diffutils
|
||||
efibootmgr
|
||||
findutils
|
||||
file
|
||||
git
|
||||
gnupatch
|
||||
hms # My own home manager switcher
|
||||
iperf
|
||||
killall
|
||||
nano
|
||||
lshw
|
||||
pciutils
|
||||
psmisc
|
||||
pwgen
|
||||
unzip
|
||||
usbutils
|
||||
wget
|
||||
xfsprogs
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
backupFileExtension = "bkp";
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.greg = import ../home/home.nix;
|
||||
extraSpecialArgs = {
|
||||
inherit top overlays;
|
||||
home = "/home/greg";
|
||||
host = config.networking.hostName;
|
||||
};
|
||||
};
|
||||
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
nix = {
|
||||
gc.dates = "weekly";
|
||||
settings.auto-optimise-store = true;
|
||||
};
|
||||
|
||||
nixpkgs.overlays = overlays;
|
||||
|
||||
# Network Manager pulls in too many deps
|
||||
networking = {
|
||||
search = [
|
||||
"thehellings.lan"
|
||||
"home"
|
||||
];
|
||||
networkmanager.enable = false;
|
||||
};
|
||||
|
||||
programs = {
|
||||
xonsh = {
|
||||
enable = true;
|
||||
extraPackages = (
|
||||
ps: with ps; [
|
||||
xonsh-apipenv
|
||||
pkgs.nur.repos.xonsh-xontribs.xonsh-direnv
|
||||
pkgs.nur.repos.xonsh-xontribs.xontrib-vox
|
||||
]
|
||||
);
|
||||
};
|
||||
|
||||
ssh = {
|
||||
extraConfig = builtins.concatStringsSep "\n" (
|
||||
lib.map (x: ''
|
||||
Host ${x}-builder
|
||||
Hostname ${x}.home
|
||||
User remote-builder-user
|
||||
'') builderHosts
|
||||
);
|
||||
|
||||
knownHosts = {
|
||||
chronicles = {
|
||||
extraHostNames = [
|
||||
"chronicles.thehellings.lan"
|
||||
"chronicles.home"
|
||||
"nas"
|
||||
"nas.thehellings.lan"
|
||||
"nas.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEBecZUva9OnZuXLaBun6/1ITo5f9p0YMLPD+q0egLRS";
|
||||
};
|
||||
dns = {
|
||||
extraHostNames = [
|
||||
"dns"
|
||||
"dns.me.ts"
|
||||
"dns.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKRCXdhXWHEvw84V9JC5bAGovvj12DLVphcEnsTHDjxW";
|
||||
};
|
||||
"genesis" = {
|
||||
extraHostNames = [
|
||||
"genesis.shire-zebra.ts.net"
|
||||
"genesis.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEI9jbTPmEWQ0F2bLYmnIOLmBnag1fkKxHRjz3X8lB/k";
|
||||
};
|
||||
"git" = {
|
||||
extraHostNames = [
|
||||
"git.home"
|
||||
"git.thehellings.lan"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC7hesFWwlmSbWPJWUiF8fIppy5a83yXw84O0Ytz+Zyq";
|
||||
};
|
||||
hosea = {
|
||||
extraHostNames = [
|
||||
"hosea.home"
|
||||
"hosea.thehellings.lan"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKLIwkTTXA56sUlUjEulXXZRvZy5H4a5ZwgKWLlpkQDz";
|
||||
};
|
||||
isaiah = {
|
||||
extraHostNames = [
|
||||
"isaiah.home"
|
||||
"isaiah.thehellings.lan"
|
||||
"isaiah-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHleYKtfV4W1Z63Ysu9w5Rbglqlz4F92YcZoMkucoTNf";
|
||||
};
|
||||
jeremiah = {
|
||||
extraHostNames = [
|
||||
"jeremiah.home"
|
||||
"jeremiah.thehellings.lan"
|
||||
"jeremiah-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOjQjXq9WYU2Ki27BR9WwJ4ZruS/lJXbjC1b0Q42Adi0";
|
||||
};
|
||||
jude = {
|
||||
extraHostNames = [
|
||||
"jude.home"
|
||||
"jude.thehellings.lan"
|
||||
"jude-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOos0zQePsa+T6Z2dsKbPOvEdrBQ8a6mx3s7pN6ysCI0";
|
||||
};
|
||||
linode = {
|
||||
extraHostNames = [
|
||||
"linode.home"
|
||||
"linode.thehellings.lan"
|
||||
"thehellings.com"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMv9Zud3kZOl86gtmkn+uj3D4kiXWDPtyUL02VVLNR4Q";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable the OpenSSH daemon for remote control
|
||||
services = {
|
||||
openssh = {
|
||||
enable = true;
|
||||
settings.X11Forwarding = true;
|
||||
};
|
||||
};
|
||||
|
||||
security.sudo.extraRules = [
|
||||
{
|
||||
users = [ "greg" ];
|
||||
commands = [
|
||||
{
|
||||
command = "ALL";
|
||||
options = [ "NOPASSWD" ];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.greg = {
|
||||
isNormalUser = true;
|
||||
createHome = true;
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
]; # Enable ‘sudo’ for the user.
|
||||
shell = config.programs.xonsh.package;
|
||||
initialPassword = "password";
|
||||
openssh.authorizedKeys.keys = lib.strings.splitString "\n" (
|
||||
builtins.readFile ../../home/ssh/authorized_keys
|
||||
);
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
||||
+5
-17
@@ -19,7 +19,6 @@ let
|
||||
name,
|
||||
system ? "x86_64-linux",
|
||||
hm ? top.hm,
|
||||
nixvim ? top.nixvimstable,
|
||||
}:
|
||||
let
|
||||
nixpkgs = import channel { inherit system; };
|
||||
@@ -32,29 +31,18 @@ let
|
||||
inherit (top) self;
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
nixpkgs.overlays = overlays;
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.greg = import ../home/home.nix;
|
||||
extraSpecialArgs = {
|
||||
inherit top overlays;
|
||||
home = "/home/greg";
|
||||
host = name;
|
||||
};
|
||||
backupFileExtension = "bkp";
|
||||
};
|
||||
}
|
||||
# Imported ones
|
||||
top.agenix.nixosModules.default
|
||||
hm.nixosModules.home-manager
|
||||
top.self.modules.nixosModule
|
||||
top.nurpkgs.modules.nixos.default
|
||||
# Local ones
|
||||
./baseline.nix
|
||||
top.self.modules.nixosModule
|
||||
./${name}
|
||||
] ++ extraMods;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
{
|
||||
genesis = unstable { name = "genesis"; };
|
||||
exodus = unstable { name = "exodus"; };
|
||||
jude = unstable { name = "jude"; };
|
||||
|
||||
@@ -1,50 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
let
|
||||
builderHosts =
|
||||
if self != null then
|
||||
(lib.attrNames (
|
||||
lib.filterAttrs (_: v: v.config.greg.remote-builder.enable) self.nixosConfigurations
|
||||
))
|
||||
else
|
||||
[ ];
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./nix-conf.nix
|
||||
];
|
||||
|
||||
programs.ssh = {
|
||||
extraConfig = builtins.concatStringsSep "\n" (
|
||||
lib.map (x: ''
|
||||
Host ${x}-builder
|
||||
Hostname ${x}.home
|
||||
User remote-builder-user
|
||||
'') builderHosts
|
||||
);
|
||||
};
|
||||
|
||||
# Base packages that need to be in all my hosts
|
||||
environment.systemPackages = with pkgs; [
|
||||
agenix
|
||||
bmon
|
||||
diffutils
|
||||
git
|
||||
gnupatch
|
||||
findutils
|
||||
file
|
||||
hms # My own home manager switcher
|
||||
btop
|
||||
iperf
|
||||
killall
|
||||
nano
|
||||
pciutils
|
||||
pwgen
|
||||
unzip
|
||||
wget
|
||||
];
|
||||
}
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
let
|
||||
nixos = (import ./nixos);
|
||||
darwin = (import ./darwin);
|
||||
hm = (import ./hm);
|
||||
in
|
||||
{
|
||||
homeManagerModule = hm;
|
||||
nixosModule = nixos;
|
||||
darwinModule = darwin;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
./baseline
|
||||
./development.nix
|
||||
./gnome.nix
|
||||
./gui.nix
|
||||
@@ -39,7 +39,6 @@ in
|
||||
njpwerner.autodocstring
|
||||
rust-lang.rust-analyzer
|
||||
tamasfe.even-better-toml
|
||||
vadimcn.vscode-lldb
|
||||
vscjava.vscode-java-test
|
||||
vscjava.vscode-java-dependency
|
||||
vscjava.vscode-java-debug
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../baseline.nix
|
||||
./backup.nix
|
||||
./ceph.nix
|
||||
./container.nix
|
||||
@@ -29,158 +25,4 @@
|
||||
./tailscale.nix
|
||||
./vmdev.nix
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
btrfs-progs
|
||||
bitwarden-cli
|
||||
coreutils-full
|
||||
efibootmgr
|
||||
psmisc
|
||||
lshw
|
||||
usbutils
|
||||
xfsprogs
|
||||
];
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
|
||||
nix = {
|
||||
gc.dates = "weekly";
|
||||
settings.auto-optimise-store = true;
|
||||
};
|
||||
|
||||
# Network Manager pulls in too many deps
|
||||
networking = {
|
||||
search = [
|
||||
"thehellings.lan"
|
||||
"home"
|
||||
];
|
||||
networkmanager.enable = false;
|
||||
};
|
||||
|
||||
programs = {
|
||||
xonsh = {
|
||||
enable = true;
|
||||
extraPackages = (
|
||||
ps: with ps; [
|
||||
xonsh-apipenv
|
||||
pkgs.nur.repos.xonsh-xontribs.xonsh-direnv
|
||||
pkgs.nur.repos.xonsh-xontribs.xontrib-vox
|
||||
]
|
||||
);
|
||||
};
|
||||
ssh.knownHosts = {
|
||||
chronicles = {
|
||||
extraHostNames = [
|
||||
"chronicles.thehellings.lan"
|
||||
"chronicles.home"
|
||||
"nas"
|
||||
"nas.thehellings.lan"
|
||||
"nas.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEBecZUva9OnZuXLaBun6/1ITo5f9p0YMLPD+q0egLRS";
|
||||
};
|
||||
dns = {
|
||||
extraHostNames = [
|
||||
"dns"
|
||||
"dns.me.ts"
|
||||
"dns.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKRCXdhXWHEvw84V9JC5bAGovvj12DLVphcEnsTHDjxW";
|
||||
};
|
||||
"genesis" = {
|
||||
extraHostNames = [
|
||||
"genesis.shire-zebra.ts.net"
|
||||
"genesis.home"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEI9jbTPmEWQ0F2bLYmnIOLmBnag1fkKxHRjz3X8lB/k";
|
||||
};
|
||||
"git" = {
|
||||
extraHostNames = [
|
||||
"git.home"
|
||||
"git.thehellings.lan"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC7hesFWwlmSbWPJWUiF8fIppy5a83yXw84O0Ytz+Zyq";
|
||||
};
|
||||
hosea = {
|
||||
extraHostNames = [
|
||||
"hosea.home"
|
||||
"hosea.thehellings.lan"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKLIwkTTXA56sUlUjEulXXZRvZy5H4a5ZwgKWLlpkQDz";
|
||||
};
|
||||
isaiah = {
|
||||
extraHostNames = [
|
||||
"isaiah.home"
|
||||
"isaiah.thehellings.lan"
|
||||
"isaiah-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHleYKtfV4W1Z63Ysu9w5Rbglqlz4F92YcZoMkucoTNf";
|
||||
};
|
||||
jeremiah = {
|
||||
extraHostNames = [
|
||||
"jeremiah.home"
|
||||
"jeremiah.thehellings.lan"
|
||||
"jeremiah-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOjQjXq9WYU2Ki27BR9WwJ4ZruS/lJXbjC1b0Q42Adi0";
|
||||
};
|
||||
jude = {
|
||||
extraHostNames = [
|
||||
"jude.home"
|
||||
"jude.thehellings.lan"
|
||||
"jude-builder"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOos0zQePsa+T6Z2dsKbPOvEdrBQ8a6mx3s7pN6ysCI0";
|
||||
};
|
||||
linode = {
|
||||
extraHostNames = [
|
||||
"linode.home"
|
||||
"linode.thehellings.lan"
|
||||
"thehellings.com"
|
||||
];
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMv9Zud3kZOl86gtmkn+uj3D4kiXWDPtyUL02VVLNR4Q";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable the OpenSSH daemon for remote control
|
||||
services = {
|
||||
openssh = {
|
||||
enable = true;
|
||||
settings.X11Forwarding = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.greg = {
|
||||
isNormalUser = true;
|
||||
createHome = true;
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
]; # Enable ‘sudo’ for the user.
|
||||
shell = config.programs.xonsh.package;
|
||||
initialPassword = "password";
|
||||
openssh.authorizedKeys.keys = lib.strings.splitString "\n" (
|
||||
builtins.readFile ../../home/ssh/authorized_keys
|
||||
);
|
||||
};
|
||||
|
||||
security.sudo.extraRules = [
|
||||
{
|
||||
users = [ "greg" ];
|
||||
commands = [
|
||||
{
|
||||
command = "ALL";
|
||||
options = [ "NOPASSWD" ];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user