This commit is contained in:
iofq 2023-04-30 14:15:07 -05:00
parent e1fe85f763
commit 7587d91cd1
8 changed files with 146 additions and 46 deletions

54
flake.lock generated
View file

@ -52,11 +52,63 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": {
"locked": {
"lastModified": 1682817260,
"narHash": "sha256-kFMXzKNj4d/0Iqbm5l57rHSLyUeyCLMuvlROZIuuhvk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "db1e4eeb0f9a9028bcb920e00abbc1409dd3ef36",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "release-22.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1682779028,
"narHash": "sha256-tFfSbwSLobpHRznAa35KEU3R+fsFWTlmpFhTUdXq8RE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "54abe781c482f51ff4ff534ebaba77db5bd97442",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs",
"sops-nix": "sops-nix"
}
},
"sops-nix": {
"inputs": {
"nixpkgs": "nixpkgs_2",
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1682823324,
"narHash": "sha256-KNu3OAqVyoKwnDP+gqptjQYCnZXxEwXccR89c0r1/8k=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "4f308f76633f81253a12b80e7b05b80d325005b2",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "sops-nix",
"type": "github"
} }
} }
}, },

View file

@ -6,18 +6,19 @@
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-hardware.url = "github:NixOS/nixos-hardware/master";
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; }; inputs.nixpkgs.follows = "nixpkgs";
}; };
outputs = { self, nixpkgs, home-manager, nixos-hardware, ... }: sops-nix.url = "github:Mic92/sops-nix";
let };
username = "e"; outputs = { self, nixpkgs, home-manager, nixos-hardware, sops-nix, ... }:
in { let
nixosConfigurations = ( username = "e";
import ./hosts { in {
inherit (nixpkgs) lib; nixosConfigurations = (
inherit nixos-hardware; import ./hosts {
inherit nixpkgs home-manager username; inherit (nixpkgs) lib;
} inherit nixpkgs home-manager nixos-hardware sops-nix username;
); }
}; );
} };
}

View file

@ -14,5 +14,6 @@
}; };
users.groups.plugdev = {}; users.groups.plugdev = {};
security.pam.services.swaylock = {}; security.pam.services.swaylock = {};
nix.settings.experimental-features = [ "nix-command" "flakes" ];
system.stateVersion = "22.11"; system.stateVersion = "22.11";
} }

View file

@ -1,4 +1,4 @@
{ lib, nixpkgs, username, home-manager, nixos-hardware, ... }: { lib, nixpkgs, username, home-manager, nixos-hardware, sops-nix, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
@ -12,36 +12,36 @@ let
in in
{ {
t14 = lib.nixosSystem { t14 = lib.nixosSystem {
inherit system; inherit system;
specialArgs = { specialArgs = {
inherit username; inherit username;
host = { host = {
hostName = "t14"; hostName = "t14";
};
}; };
}; modules = [
modules = [ sops-nix.nixosModules.sops
./configuration.nix ./configuration.nix
./t14/configuration.nix ./t14/configuration.nix
nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1 nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { home-manager.extraSpecialArgs = {
inherit username; inherit username;
host = {
hostName = "t14";
}; };
}; home-manager.sharedModules = [
home-manager.users.${username} = { sops-nix.homeManagerModule
programs.home-manager.enable = true;
imports = [
./home.nix
./t14/home.nix
]; ];
}; home-manager.users.${username} = {
} programs.home-manager.enable = true;
]; imports = [
}; ./t14/home.nix
];
};
}
];
};
} }

View file

@ -8,6 +8,8 @@
htop htop
appimage-run appimage-run
ripgrep ripgrep
fluxcd
k9s
]; ];
}; };
systemd.user.startServices = "sd-switch"; systemd.user.startServices = "sd-switch";

View file

@ -1,4 +1,4 @@
{ nixos-hardware, config, pkgs, ... }: { config, pkgs, nixos-hardware, sops-nix, ... }:
{ {
imports = imports =
[ [
@ -12,6 +12,7 @@
fonts = { fonts = {
fonts = with pkgs; [ fonts = with pkgs; [
spleen spleen
roboto
]; ];
}; };
programs.light.enable = true; programs.light.enable = true;

View file

@ -3,16 +3,17 @@
imports = [ imports = [
../../modules/wayland ../../modules/wayland
../../modules/librewolf ../../modules/librewolf
../home.nix
]; ];
home = { home = {
packages = with pkgs; [ packages = with pkgs; [
neofetch
pulseaudio pulseaudio
pulsemixer pulsemixer
alsa-utils alsa-utils
discord discord
signal-desktop signal-desktop
runelite runelite
framesh
]; ];
}; };
} }

View file

@ -71,6 +71,7 @@
"XF86AudioRaiseVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ +1%'"; "XF86AudioRaiseVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ +1%'";
"XF86AudioLowerVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ -1%'"; "XF86AudioLowerVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ -1%'";
"XF86AudioMute" = "exec 'pactl set-sink-mute @DEFAULT_SINK@ toggle'"; "XF86AudioMute" = "exec 'pactl set-sink-mute @DEFAULT_SINK@ toggle'";
"XF86Display" = "exec 'swaymsg \"output eDP-1 toggle\"'";
}; };
assigns = { assigns = {
"9" = [ "9" = [
@ -129,6 +130,10 @@
}; };
}; };
}; };
extraConfig=''
bindswitch lid:on output eDP-1 disable
bindswitch lid:off output eDP-1 enable
'';
}; };
programs.i3status = { programs.i3status = {
enable = true; enable = true;
@ -204,4 +209,41 @@
{ timeout = 1200; command = "${pkgs.sway}/bin/swaymsg \"output * power off\"";} { timeout = 1200; command = "${pkgs.sway}/bin/swaymsg \"output * power off\"";}
]; ];
}; };
services.kanshi = {
enable = true;
profiles = {
nodock = {
outputs = [
{
criteria = "eDP-1";
}
];
};
dock = {
outputs = [
{
criteria = "DP-4";
status = "enable";
mode = "1920x1080@60Hz";
position = "0,0";
}
];
};
bothdock = {
outputs = [
{
criteria = "eDP-1";
status = "enable";
position = "0,1080";
}
{
criteria = "DP-4";
status = "enable";
mode = "1920x1080@60Hz";
position = "0,0";
}
];
};
};
};
} }