Compare commits
12
Commits
5b88519578
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1952335f07 | ||
|
|
3cdf301bfc | ||
|
|
1e39a5a203 | ||
|
|
0eaeb7c8b8 | ||
|
|
7ebe89deaa | ||
|
|
bf5faa162b | ||
|
|
e57fa289f7 | ||
|
|
5210eb3b08 | ||
|
|
3adbb09410 | ||
|
|
aab9900551 | ||
|
|
f63e57f74b | ||
|
|
a611bb3c72 |
+4
-2
@@ -1,7 +1,9 @@
|
|||||||
keys:
|
keys:
|
||||||
- &thinkpad age1cd40qmufxzvw8dkml9340czqfq6ta3kxpjfj47jpavwn2t7ghywsxhqz79
|
- &lavender age1az6l56h4m38jw2hm7t7a99wp9f88s845sg29grtmdpz72lrkc5cq66kmcv
|
||||||
|
- &violet age1cd40qmufxzvw8dkml9340czqfq6ta3kxpjfj47jpavwn2t7ghywsxhqz79
|
||||||
creation_rules:
|
creation_rules:
|
||||||
- path_regex: secrets/[^/]+\.yaml$
|
- path_regex: secrets/[^/]+\.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- age:
|
- age:
|
||||||
- *thinkpad
|
- *lavender
|
||||||
|
- *violet
|
||||||
|
|||||||
@@ -40,12 +40,12 @@
|
|||||||
|
|
||||||
outputs = { nixpkgs, home-manager, sops-nix, niri, dms, dms-plugin-registry, danksearch, wvkbd-src, ... }@inputs: {
|
outputs = { nixpkgs, home-manager, sops-nix, niri, dms, dms-plugin-registry, danksearch, wvkbd-src, ... }@inputs: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
thinkpad = nixpkgs.lib.nixosSystem {
|
violet = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/thinkpad/default.nix
|
./hosts/violet/default.nix
|
||||||
|
|
||||||
niri.nixosModules.niri
|
niri.nixosModules.niri
|
||||||
dms-plugin-registry.nixosModules.default
|
dms-plugin-registry.nixosModules.default
|
||||||
@@ -67,6 +67,31 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
lavender = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = { inherit inputs; };
|
||||||
|
|
||||||
|
modules = [
|
||||||
|
./hosts/lavender/default.nix
|
||||||
|
|
||||||
|
niri.nixosModules.niri
|
||||||
|
dms-plugin-registry.nixosModules.default
|
||||||
|
sops-nix.nixosModules.sops
|
||||||
|
|
||||||
|
home-manager.nixosModules.home-manager {
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||||
|
|
||||||
|
home-manager.users.jashton = {
|
||||||
|
imports = [
|
||||||
|
./home/jashton.nix
|
||||||
|
danksearch.homeModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-17
@@ -72,7 +72,7 @@ in
|
|||||||
layout = {
|
layout = {
|
||||||
gaps = 8;
|
gaps = 8;
|
||||||
center-focused-column = "never";
|
center-focused-column = "never";
|
||||||
default-column-width.proportion = 0.985;
|
default-column-width.proportion = 1.0;
|
||||||
border.enable = false;
|
border.enable = false;
|
||||||
#tab-indicator.corner-radius = 18.0;
|
#tab-indicator.corner-radius = 18.0;
|
||||||
focus-ring = {
|
focus-ring = {
|
||||||
@@ -95,22 +95,6 @@ in
|
|||||||
draw-border-with-background = true;
|
draw-border-with-background = true;
|
||||||
clip-to-geometry = true;
|
clip-to-geometry = true;
|
||||||
}
|
}
|
||||||
{
|
|
||||||
matches = [
|
|
||||||
{
|
|
||||||
app-id = "google-chrome";
|
|
||||||
title = "^Picture-in-Picture$";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
open-floating = true;
|
|
||||||
default-column-width = { fixed = 480; };
|
|
||||||
default-window-height = { fixed = 270; };
|
|
||||||
default-floating-position = {
|
|
||||||
x = 32;
|
|
||||||
y = 32;
|
|
||||||
relative-to = "bottom-left";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Vim Keybindings & Built-in Features
|
# Vim Keybindings & Built-in Features
|
||||||
|
|||||||
+7
-16
@@ -40,22 +40,16 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
aider-chat
|
|
||||||
animdl
|
|
||||||
antigravity
|
antigravity
|
||||||
asciinema
|
asciinema
|
||||||
discord
|
discord
|
||||||
ffmpeg
|
ffmpeg
|
||||||
freetube
|
|
||||||
gemini-cli
|
gemini-cli
|
||||||
intelli-shell
|
|
||||||
jrnl
|
|
||||||
libreoffice
|
libreoffice
|
||||||
mc
|
mc
|
||||||
opencode
|
opencode
|
||||||
pdftk
|
pdftk
|
||||||
scrot
|
scrot
|
||||||
steam
|
|
||||||
spotify
|
spotify
|
||||||
vlc
|
vlc
|
||||||
wtype
|
wtype
|
||||||
@@ -117,17 +111,14 @@ in
|
|||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
matchBlocks = {
|
matchBlocks = {
|
||||||
"gitea" = {
|
"heliotrope" = {
|
||||||
host = "git.joshashton.dev";
|
hostname = "100.77.235.110";
|
||||||
port = 2222;
|
|
||||||
user = "jashton";
|
|
||||||
identityFile = "~/.ssh/gitea";
|
|
||||||
};
|
};
|
||||||
"server" = {
|
"lavender" = {
|
||||||
host = "50.28.69.78";
|
hostname = "100.99.189.49";
|
||||||
port = 22;
|
};
|
||||||
user = "jashton";
|
"violet" = {
|
||||||
identityFile = "~/.ssh/server";
|
hostname = "100.101.100.84";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./hardware.nix
|
||||||
|
../../system
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.hostName = "lavender";
|
||||||
|
|
||||||
|
system.stateVersion = "26.05";
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/2fc352b4-3b86-4282-9eb8-0bcaf6d48cd1";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/0CB6-7449";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/games" = {
|
||||||
|
device = "/dev/disk/by-uuid/35b81a4f-c392-49b2-89a6-0a4c1820b1d8";
|
||||||
|
fsType = "ext4";
|
||||||
|
options = [ "defaults" "nofail" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ { device = "/dev/disk/by-uuid/8f8fdc73-d963-4665-b7e4-28eb43958ebe"; } ];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
../../system/security/thinkpad.nix
|
../../system/security/thinkpad.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "nix-pad";
|
networking.hostName = "violet";
|
||||||
|
|
||||||
services.power-profiles-daemon.enable = false;
|
services.power-profiles-daemon.enable = false;
|
||||||
|
|
||||||
+18
-9
@@ -1,17 +1,26 @@
|
|||||||
vaultwarden_clientid: ENC[AES256_GCM,data:MpSoam3ioiN0EaXjReSOjbKTSUwDfw2UoYldGd4GuU3+Mj3ZakzsQlw=,iv:VlgZg67Bia2IkuKtf8gPEx0rodZZ/3l9PKGEt26ihoA=,tag:yoC7AQoAa7TMJTaPObtN8A==,type:str]
|
vaultwarden_clientid: ENC[AES256_GCM,data:JYjzfEf96nbtMWenTiu0XoPDu/GeIkKaFArczjK85Xv2Xr5qMRQ0TU0=,iv:KmjFmVDwRtaV3IXiBgSBWNqtvRFvmXhhT8fqnktw/7E=,tag:5fDkvjZpRQpz0QAFQ54IHA==,type:str]
|
||||||
vaultwarden_clientsecret: ENC[AES256_GCM,data:RXxgt4N2bv74quQgLQ1hQsk03DwpZ9MNMZVyL3n8,iv:jBSREKIY9CraTLtwEltN2Cj2otwwWwpu4aanymWNYJA=,tag:6+z/PmGaf088urBq3TPgWg==,type:str]
|
vaultwarden_clientsecret: ENC[AES256_GCM,data:Gljzsaq5lcnQBpltDebQsFP6qpUmVpVQqqi7I8he,iv:M09cRJlrafNxstfEGHSAd1AtLi56hUiZSchsX3U8GQE=,tag:0Tknj26xQehBiMMEWYMSHw==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- enc: |
|
- enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzUzZKTk1jSmpjYjhhQVJt
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyNjkvMzI5MUtPZEVua0U1
|
||||||
RVo3WCtqem5HWk5XdlF6YSt2czNoRVZ5VWhFCkV5ZExYVHNsZUpkcjlqQWg3K2Zx
|
TkxIREI3MnNNbytGTStXWWxwdm9XbEYwTmlZCnhMcGZGNnU2RTVtRzVUWWxzRzFw
|
||||||
dnpRYUFDdUtzd3Y5bHFFOVM4WmJRancKLS0tIEhuc0dyTFFGdThmQlozL0JYeWt0
|
NTRVT1ZSUFZOY29JNWZacjdoMjE1S3MKLS0tIFVoZk5Ea3pMUUYvYVgvUzdTN2Yx
|
||||||
Q0FvNkQwZGV2TmlQK1dTRXF4cWRZVW8K+QYGO6qJjzQKsaogR7OkUPLFVvKNMOc9
|
V3VITk1wc05DK0tvRnBNZ1ptSldWUGsKT3fSHkqsjkvtRgbPpvIz0ufGPf4pZh6G
|
||||||
+KnFObbq/Axz3wfRBqFKWFnSeJ+L4j1UWpzAuwXqaPFoBrLlcRWNbw==
|
iibDAgCCrsHk0GViDIBlnwOHgwCM4io3j565M+jS6cjV2YKsOHz2Ng==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
recipient: age1az6l56h4m38jw2hm7t7a99wp9f88s845sg29grtmdpz72lrkc5cq66kmcv
|
||||||
|
- enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQelp5Y2E2WFM1TFhIb1gz
|
||||||
|
eS9lWTAydUYrQlYxZkY5akt3MkI5TGlXSVhRCktTV0tFcmFwaS9VVTdwZTRlWkFF
|
||||||
|
alNQYW83TTcycytWVHVZUVhmOU5ETU0KLS0tIGJmSWZRaW5tM3R6a3ZlaitSb3d3
|
||||||
|
a0JFN3NORTBFYVpsMjJkUHdtbFh4c1EK7lRQR/qO3rpctSDC6Mvy6eAA6zj70MDD
|
||||||
|
cmUiMcIDn2FyX5d9r2jk5EZtx2rZPB4ti4pp4Lox3zuEMMCksaFXmw==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
recipient: age1cd40qmufxzvw8dkml9340czqfq6ta3kxpjfj47jpavwn2t7ghywsxhqz79
|
recipient: age1cd40qmufxzvw8dkml9340czqfq6ta3kxpjfj47jpavwn2t7ghywsxhqz79
|
||||||
lastmodified: "2026-08-03T13:12:18Z"
|
lastmodified: "2026-08-05T02:52:44Z"
|
||||||
mac: ENC[AES256_GCM,data:Rn5ihTmZg2nc7kBXUcaKg5Tlv0OgxadxL1Xh2FGI+FjZEBlhxBIPGGAXL8AlPZRoTIWofl3uUaeiP79p1TrAzaOxssM53cL39wpF2Zmk5YtdMM0Qks1Vtk7S+0QW97JoKESMFuzlBi7xmuhGKgCb8RHmleVa5WSvP2bcjOHpy8M=,iv:jKwVkaRwppHYoHSmeU8jE4NanNsirRqE1FWoCn+hLEE=,tag:L8aRqgkv56T4qA0h/JEjKg==,type:str]
|
mac: ENC[AES256_GCM,data:69aZI03tg5IakwK80lx/eVrFq84WB2dk3DFKc5X5Idc2irrz2AodqsmlBNkrDDC6bnv1kUAW8dQlOscbHxKNtOq+lzEtuVI88A2sO1JT06ILFMMfj3R2BEZPtuidl/iytovUKmZrL9JzlNKTd/74htsBvC3cLoIk7r/WfyfoU4w=,iv:r2Jzq9IqL+ssKo13tpJ4OrgnPxxNaNaYbAa0+DnLt54=,tag:GL5AEZPDudVB+IQZtbmwvg==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.13.2
|
version: 3.13.2
|
||||||
|
|||||||
@@ -5,6 +5,6 @@
|
|||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
boot.kernelModules = [ "uinput" ];
|
boot.kernelModules = [ "uinput" ];
|
||||||
system.nixos.label = "niri-v.1.1";
|
system.nixos.label = "niri-v.1.2";
|
||||||
environment.pathsToLink = [ "/libexec" ];
|
environment.pathsToLink = [ "/libexec" ];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,7 +33,6 @@
|
|||||||
ehome = "nvim $HOME/.dotfiles/home/jashton.nix";
|
ehome = "nvim $HOME/.dotfiles/home/jashton.nix";
|
||||||
l = "ls -la";
|
l = "ls -la";
|
||||||
ports = "cat $HOME/.dotfiles/ports.registry";
|
ports = "cat $HOME/.dotfiles/ports.registry";
|
||||||
accentum = "bluetoothctl connect 80:C3:BA:50:43:DF";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
ohMyZsh = {
|
ohMyZsh = {
|
||||||
|
|||||||
+15
-7
@@ -28,9 +28,7 @@
|
|||||||
networkmanagerapplet
|
networkmanagerapplet
|
||||||
nitrogen
|
nitrogen
|
||||||
ollama
|
ollama
|
||||||
(pass.withExtensions (exts: [ exts.pass-import ]))
|
|
||||||
pasystray
|
pasystray
|
||||||
picom
|
|
||||||
pulseaudioFull
|
pulseaudioFull
|
||||||
rnote
|
rnote
|
||||||
sops
|
sops
|
||||||
@@ -52,10 +50,11 @@
|
|||||||
|
|
||||||
DOTFILES="$HOME/.dotfiles"
|
DOTFILES="$HOME/.dotfiles"
|
||||||
ERRFILE=$(mktemp)
|
ERRFILE=$(mktemp)
|
||||||
|
HOST=$(cat /etc/hostname)
|
||||||
trap "rm -f '$ERRFILE'" EXIT
|
trap "rm -f '$ERRFILE'" EXIT
|
||||||
|
|
||||||
echo "Building NixOS..."
|
echo "Building NixOS..."
|
||||||
sudo nixos-rebuild switch --flake "$DOTFILES#thinkpad" 2>&1 | tee "$ERRFILE"
|
sudo nixos-rebuild switch --flake "$DOTFILES#$HOST" 2>&1 | tee "$ERRFILE"
|
||||||
STATUS=''${PIPESTATUS[0]}
|
STATUS=''${PIPESTATUS[0]}
|
||||||
|
|
||||||
if [ "$STATUS" -ne 0 ]; then
|
if [ "$STATUS" -ne 0 ]; then
|
||||||
@@ -82,14 +81,23 @@
|
|||||||
read -r msg_to_append
|
read -r msg_to_append
|
||||||
|
|
||||||
${pkgs.git}/bin/git add -A
|
${pkgs.git}/bin/git add -A
|
||||||
${pkgs.git}/bin/git commit -m "nixos: gen $GEN @ $(hostname) — $TIMESTAMP
|
${pkgs.git}/bin/git commit -m "nixos: gen $GEN @ $(hostname) — $TIMESTAMP $VER ----- $msg_to_append"
|
||||||
$VER
|
|
||||||
|
|
||||||
$msg_to_append"
|
|
||||||
${pkgs.git}/bin/git push
|
${pkgs.git}/bin/git push
|
||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.firefox.enable = true;
|
programs.firefox.enable = true;
|
||||||
programs.thunar.enable = true;
|
programs.thunar.enable = true;
|
||||||
|
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.steam = {
|
||||||
|
enable = true;
|
||||||
|
remotePlay.openFirewall = true;
|
||||||
|
dedicatedServer.openFirewall = true;
|
||||||
|
localNetworkGameTransfers.openFirewall = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,6 +66,10 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
tailscale = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
upower.enable = true;
|
upower.enable = true;
|
||||||
printing.enable = true;
|
printing.enable = true;
|
||||||
gvfs.enable = true;
|
gvfs.enable = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user