substituters, sway mod preference per user, move hosts/absolution to hosts/apalapucia, etc
This commit is contained in:
parent
d0bb2fe776
commit
d8d3f43c53
10 changed files with 275 additions and 279 deletions
147
flake.lock
generated
147
flake.lock
generated
|
|
@ -1,8 +1,43 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"flake-compat": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733328505,
|
||||||
|
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||||
|
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||||
|
"revCount": 69,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": [
|
||||||
|
"nixpkgs-xr",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1731533236,
|
||||||
|
|
@ -54,7 +89,46 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-xr": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"nvfetcher": "nvfetcher",
|
||||||
|
"systems": "systems",
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1771812780,
|
||||||
|
"narHash": "sha256-uO9m93APRSZgFRxw3GVu09RNLH98WsYpfRHSNM6Ad1U=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-xr",
|
||||||
|
"rev": "b91c0cf11e920a18a134aadf7fbe481f648205ee",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-xr",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1771369470,
|
||||||
|
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "0182a361324364ae3f436a63005877674cf45efb",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766651565,
|
"lastModified": 1766651565,
|
||||||
"narHash": "sha256-QEhk0eXgyIqTpJ/ehZKg9IKS7EtlWxF3N7DXy42zPfU=",
|
"narHash": "sha256-QEhk0eXgyIqTpJ/ehZKg9IKS7EtlWxF3N7DXy42zPfU=",
|
||||||
|
|
@ -70,14 +144,60 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nvfetcher": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"nixpkgs-xr",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"flake-utils": [
|
||||||
|
"nixpkgs-xr",
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs-xr",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1766178214,
|
||||||
|
"narHash": "sha256-tKDXreDwrRkdjvfot5fr1++ed6oOq3+/hW/Dj8WfTgs=",
|
||||||
|
"owner": "Red-M",
|
||||||
|
"repo": "nvfetcher",
|
||||||
|
"rev": "a84b3ce67f1d7acd85b3aa2b9967ab91ed6e7a71",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Red-M",
|
||||||
|
"repo": "nvfetcher",
|
||||||
|
"rev": "a84b3ce67f1d7acd85b3aa2b9967ab91ed6e7a71",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-xr": "nixpkgs-xr",
|
||||||
"waterfox": "waterfox"
|
"waterfox": "waterfox"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689347949,
|
||||||
|
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
@ -92,10 +212,31 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs-xr",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1770228511,
|
||||||
|
"narHash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"rev": "337a4fe074be1042a35086f15481d763b8ddc0e7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"waterfox": {
|
"waterfox": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1770890709,
|
"lastModified": 1770890709,
|
||||||
|
|
|
||||||
11
flake.nix
11
flake.nix
|
|
@ -6,9 +6,10 @@
|
||||||
home-manager.url = "github:nix-community/home-manager";
|
home-manager.url = "github:nix-community/home-manager";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
waterfox.url = "github:Hythera/nix-waterfox";
|
waterfox.url = "github:Hythera/nix-waterfox";
|
||||||
|
nixpkgs-xr.url = "github:nix-community/nixpkgs-xr";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{self, nixpkgs, home-manager, ...}:{
|
outputs = inputs@{self, nixpkgs, home-manager, nixpkgs-xr, ...}:{
|
||||||
nixosConfigurations."fenix" = nixpkgs.lib.nixosSystem {
|
nixosConfigurations."fenix" = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
|
|
@ -36,19 +37,17 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/absolution
|
./hosts/apalapucia
|
||||||
./variables.nix
|
./variables.nix
|
||||||
|
nixpkgs-xr.nixosModules.nixpkgs-xr
|
||||||
{ config.var.username = "alyx";
|
{ config.var.username = "alyx";
|
||||||
config.var.hostname = "apalapucia";
|
config.var.hostname = "apalapucia";
|
||||||
config.var.timezone = "Europe/London";
|
config.var.timezone = "Europe/London";
|
||||||
|
config.var.class = "desktop";
|
||||||
}
|
}
|
||||||
home-manager.nixosModules.home-manager {
|
home-manager.nixosModules.home-manager {
|
||||||
home-manager.extraSpecialArgs = {
|
home-manager.extraSpecialArgs = {
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
vars = {
|
|
||||||
class = "desktop";
|
|
||||||
user = "alyx";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
{config, pkgs, lib, inputs, vars, ...}:{
|
{config, pkgs, lib, inputs, vars, osConfig, ...}:{
|
||||||
imports = [
|
imports = [
|
||||||
# things we import later
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home = rec {
|
home = rec {
|
||||||
username = vars.user;
|
username = osConfig.var.username;
|
||||||
homeDirectory = "/home/${username}";
|
homeDirectory = "/home/${username}";
|
||||||
stateVersion = "26.05";
|
stateVersion = "26.05";
|
||||||
shell.enableBashIntegration = true;
|
shell.enableBashIntegration = true;
|
||||||
file = {
|
file = {
|
||||||
".config/waybar/config".source = (if vars.user == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern");
|
".config/waybar/config".source = (if osConfig.var.username == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern");
|
||||||
".config/waybar/style.css".source = (if vars.user == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack.css" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern.css");
|
".config/waybar/style.css".source = (if osConfig.var.username == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack.css" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern.css");
|
||||||
};
|
};
|
||||||
pointerCursor = {
|
pointerCursor = {
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
|
|
@ -42,7 +41,7 @@
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
programs.foot = {
|
programs.foot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings.main.font = (if vars.user == "alyx" then "monospace:size=20" else "monospace:size=12");
|
settings.main.font = (if osConfig.var.username == "alyx" then "monospace:size=20" else "monospace:size=12");
|
||||||
settings.colors.alpha = "0.9";
|
settings.colors.alpha = "0.9";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -55,7 +54,7 @@
|
||||||
|
|
||||||
services.mpd = {
|
services.mpd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
musicDirectory = "/home/${vars.user}/Music";
|
musicDirectory = "/home/${osConfig.var.username}/Music";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
audio_output {
|
audio_output {
|
||||||
type "pipewire"
|
type "pipewire"
|
||||||
|
|
@ -73,8 +72,8 @@
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
user.name = vars.user;
|
user.name = osConfig.var.username;
|
||||||
user.email = (if vars.user == "alyx" then "alyxwren@proton.me" else "beanigit@protonmail.com");
|
user.email = (if osConfig.var.username == "alyx" then "alyxwren@proton.me" else "beanigit@protonmail.com");
|
||||||
commit.gpgsign = true;
|
commit.gpgsign = true;
|
||||||
gpg.format = "ssh";
|
gpg.format = "ssh";
|
||||||
user.signingKey = "~/.ssh/id_ed25519.pub";
|
user.signingKey = "~/.ssh/id_ed25519.pub";
|
||||||
|
|
@ -96,13 +95,32 @@
|
||||||
wayland.windowManager.sway.xwayland = true;
|
wayland.windowManager.sway.xwayland = true;
|
||||||
wayland.windowManager.sway.package = pkgs.swayfx;
|
wayland.windowManager.sway.package = pkgs.swayfx;
|
||||||
wayland.windowManager.sway.config = null;
|
wayland.windowManager.sway.config = null;
|
||||||
|
|
||||||
|
wayland.windowManager.sway.extraConfigEarly = (if osConfig.var.username == "alyx" then ''set $mod Mod1'' else ''set $mod Mod4'');
|
||||||
|
|
||||||
wayland.windowManager.sway.extraConfig = ''
|
wayland.windowManager.sway.extraConfig = ''
|
||||||
include ~/.config/nixos/home/wms/sway
|
include ~/.config/nixos/home/wms/sway
|
||||||
'';
|
'';
|
||||||
wayland.windowManager.sway.checkConfig = false;
|
wayland.windowManager.sway.checkConfig = false;
|
||||||
|
|
||||||
|
services.kanshi = {
|
||||||
|
enable = true;
|
||||||
|
settings = [
|
||||||
|
{
|
||||||
|
profile.name = "alyx-desktop";
|
||||||
|
profile.outputs = [
|
||||||
|
{ criteria = "Microstep MSI G273Q CA8A463100033"; position = "1600,0"; mode = "2560x1440@164.835007"; }
|
||||||
|
{ criteria = "Dell Inc. Dell 2007FP MY546856GT2L"; position = "0,0"; mode = "1600x1200@60.000000"; }
|
||||||
|
{ criteria = "Valve Corporation index HMD 0xEDE55842"; status = "disable"; }
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
programs.obs-studio.enable = true;
|
programs.obs-studio.enable = true;
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
fzf
|
fzf
|
||||||
libsForQt5.qt5ct
|
libsForQt5.qt5ct
|
||||||
kdePackages.qt6ct
|
kdePackages.qt6ct
|
||||||
|
|
|
||||||
|
|
@ -1,201 +0,0 @@
|
||||||
input {
|
|
||||||
keyboard {
|
|
||||||
xkb {
|
|
||||||
layout "gb"
|
|
||||||
model ""
|
|
||||||
rules ""
|
|
||||||
}
|
|
||||||
repeat-delay 600
|
|
||||||
repeat-rate 25
|
|
||||||
track-layout "global"
|
|
||||||
}
|
|
||||||
touchpad {
|
|
||||||
natural-scroll
|
|
||||||
accel-profile "flat"
|
|
||||||
click-method "clickfinger"
|
|
||||||
scroll-factor 0.300000
|
|
||||||
}
|
|
||||||
mouse { accel-profile "flat"; }
|
|
||||||
trackpoint { accel-profile "flat"; }
|
|
||||||
trackball { accel-profile "flat"; }
|
|
||||||
focus-follows-mouse
|
|
||||||
disable-power-key-handling
|
|
||||||
mod-key "Alt"
|
|
||||||
}
|
|
||||||
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
|
||||||
prefer-no-csd
|
|
||||||
layout {
|
|
||||||
gaps 16
|
|
||||||
struts {
|
|
||||||
left 0
|
|
||||||
right 0
|
|
||||||
top 0
|
|
||||||
bottom 0
|
|
||||||
}
|
|
||||||
focus-ring {
|
|
||||||
width 2
|
|
||||||
active-color "rgb(0, 255, 255)"
|
|
||||||
inactive-color "rgb(0, 146, 148)"
|
|
||||||
}
|
|
||||||
border { off; }
|
|
||||||
default-column-width
|
|
||||||
center-focused-column "never"
|
|
||||||
}
|
|
||||||
cursor {
|
|
||||||
xcursor-theme "default"
|
|
||||||
xcursor-size 24
|
|
||||||
}
|
|
||||||
hotkey-overlay { skip-at-startup; }
|
|
||||||
binds {
|
|
||||||
Alt+Print { screenshot-window; }
|
|
||||||
Ctrl+Print { screenshot-screen; }
|
|
||||||
Mod+1 { focus-workspace 1; }
|
|
||||||
Mod+2 { focus-workspace 2; }
|
|
||||||
Mod+3 { focus-workspace 3; }
|
|
||||||
Mod+4 { focus-workspace 4; }
|
|
||||||
Mod+5 { focus-workspace 5; }
|
|
||||||
Mod+6 { focus-workspace 6; }
|
|
||||||
Mod+7 { focus-workspace 7; }
|
|
||||||
Mod+8 { focus-workspace 8; }
|
|
||||||
Mod+9 { focus-workspace 9; }
|
|
||||||
Mod+C { center-column; }
|
|
||||||
Mod+Comma { consume-window-into-column; }
|
|
||||||
Mod+Ctrl+End { move-column-to-last; }
|
|
||||||
Mod+Ctrl+Home { move-column-to-first; }
|
|
||||||
Mod+Ctrl+I { move-column-to-workspace-up; }
|
|
||||||
"Mod+Ctrl+Page_Down" { move-column-to-workspace-down; }
|
|
||||||
"Mod+Ctrl+Page_Up" { move-column-to-workspace-up; }
|
|
||||||
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
|
|
||||||
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
|
|
||||||
Mod+Ctrl+U { move-column-to-workspace-down; }
|
|
||||||
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
|
|
||||||
Mod+Ctrl+WheelScrollLeft { move-column-left; }
|
|
||||||
Mod+Ctrl+WheelScrollRight { move-column-right; }
|
|
||||||
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
|
|
||||||
Mod+D { spawn "foot" "--title" "launch" "--app-id" "fzf-launcher-foot" "bash" "-c" "niri msg action spawn -- bash -c \"$(compgen -c | sort -u | fzf --bind=enter:replace-query+print-query) >/dev/null\""; }
|
|
||||||
Mod+Down { focus-window-down; }
|
|
||||||
Mod+End { focus-column-last; }
|
|
||||||
Mod+Equal { set-column-width "+10%"; }
|
|
||||||
Mod+F { maximize-column; }
|
|
||||||
Mod+H { focus-column-left; }
|
|
||||||
Mod+Home { focus-column-first; }
|
|
||||||
Mod+I { focus-workspace-down; }
|
|
||||||
Mod+J { focus-window-down; }
|
|
||||||
Mod+K { focus-window-up; }
|
|
||||||
Mod+L { focus-column-right; }
|
|
||||||
Mod+Left { focus-column-left; }
|
|
||||||
Mod+Minus { set-column-width "-10%"; }
|
|
||||||
Mod+N { spawn "swaync-client" "-t"; }
|
|
||||||
"Mod+Page_Down" { focus-workspace-down; }
|
|
||||||
"Mod+Page_Up" { focus-workspace-up; }
|
|
||||||
Mod+Period { expel-window-from-column; }
|
|
||||||
Mod+R { switch-preset-column-width; }
|
|
||||||
Mod+Return { spawn "foot"; }
|
|
||||||
Mod+Right { focus-column-right; }
|
|
||||||
Mod+Shift+1 { move-column-to-workspace 1; }
|
|
||||||
Mod+Shift+2 { move-column-to-workspace 2; }
|
|
||||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
|
||||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
|
||||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
|
||||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
|
||||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
|
||||||
Mod+Shift+8 { move-column-to-workspace 8; }
|
|
||||||
Mod+Shift+9 { move-column-to-workspace 9; }
|
|
||||||
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
|
|
||||||
Mod+Shift+Ctrl+H { move-column-to-monitor-left; }
|
|
||||||
Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
|
|
||||||
Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
|
|
||||||
Mod+Shift+Ctrl+L { move-column-to-monitor-right; }
|
|
||||||
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
|
|
||||||
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
|
|
||||||
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
|
|
||||||
Mod+Shift+Down { move-window-down; }
|
|
||||||
Mod+Shift+E { quit; }
|
|
||||||
Mod+Shift+Equal { set-window-height "+10%"; }
|
|
||||||
Mod+Shift+F { fullscreen-window; }
|
|
||||||
Mod+Shift+H { move-column-left; }
|
|
||||||
Mod+Shift+I { move-workspace-up; }
|
|
||||||
Mod+Shift+J { move-window-down; }
|
|
||||||
Mod+Shift+K { move-window-up; }
|
|
||||||
Mod+Shift+L { move-column-right; }
|
|
||||||
Mod+Shift+Left { move-column-left; }
|
|
||||||
Mod+Shift+Minus { set-window-height "-10%"; }
|
|
||||||
Mod+Shift+P { power-off-monitors; }
|
|
||||||
"Mod+Shift+Page_Down" { move-workspace-down; }
|
|
||||||
"Mod+Shift+Page_Up" { move-workspace-up; }
|
|
||||||
Mod+Shift+Q repeat=false { close-window; }
|
|
||||||
Mod+Shift+R { reset-window-height; }
|
|
||||||
Mod+Shift+Right { move-column-right; }
|
|
||||||
Mod+Shift+Space { toggle-window-floating; }
|
|
||||||
Mod+Shift+U { move-workspace-down; }
|
|
||||||
Mod+Shift+Up { move-window-up; }
|
|
||||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
|
||||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
|
||||||
Mod+T { spawn "foot" "--title" "music" "--app-id" "mpd-control-foot" "ncmpcpp"; }
|
|
||||||
Mod+U { focus-workspace-up; }
|
|
||||||
Mod+Up { focus-window-up; }
|
|
||||||
Mod+V { spawn "/home/alyx/.binaries/wooz"; }
|
|
||||||
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
|
||||||
Mod+WheelScrollLeft { focus-column-left; }
|
|
||||||
Mod+WheelScrollRight { focus-column-right; }
|
|
||||||
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
|
||||||
Print { screenshot; }
|
|
||||||
XF86AudioLowerVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%-"; }
|
|
||||||
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; }
|
|
||||||
XF86AudioMute { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
|
||||||
XF86AudioNext { spawn "playerctl" "next"; }
|
|
||||||
XF86AudioPlay { spawn "playerctl" "play-pause"; }
|
|
||||||
XF86AudioPrev { spawn "playerctl" "previous"; }
|
|
||||||
XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%+"; }
|
|
||||||
XF86AudioStop { spawn "playerctl" "stop"; }
|
|
||||||
XF86MonBrightnessDown { spawn "brightnessctl" "s" "10%-"; }
|
|
||||||
XF86MonBrightnessUp { spawn "brightnessctl" "s" "+10%"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
output "DP-3" {
|
|
||||||
mode "2560x1440@164.835"
|
|
||||||
scale 1.0
|
|
||||||
position x=0 y=0
|
|
||||||
focus-at-startup
|
|
||||||
}
|
|
||||||
|
|
||||||
overview {
|
|
||||||
backdrop-color "#002428"
|
|
||||||
}
|
|
||||||
|
|
||||||
spawn-at-startup "waybar"
|
|
||||||
spawn-at-startup "mpdscribble"
|
|
||||||
spawn-at-startup "corectrl" "--minimize-systray"
|
|
||||||
spawn-at-startup "swww-daemon"
|
|
||||||
spawn-at-startup "udiskie" "--appindicator"
|
|
||||||
spawn-at-startup "swaync"
|
|
||||||
spawn-at-startup "/usr/libexec/polkit-mate-authentication-agent-1"
|
|
||||||
spawn-at-startup "sh" "-c" "EPYTHON=python3.12 mpdlcd &"
|
|
||||||
window-rule {
|
|
||||||
match title="^launch$"
|
|
||||||
open-floating true
|
|
||||||
default-column-width { fixed 1000; }
|
|
||||||
default-window-height { fixed 800; }
|
|
||||||
}
|
|
||||||
window-rule {
|
|
||||||
match title="^music$"
|
|
||||||
open-floating true
|
|
||||||
}
|
|
||||||
window-rule {
|
|
||||||
match title="^(Picture-in-Picture)$"
|
|
||||||
open-floating true
|
|
||||||
default-column-width { fixed 480; }
|
|
||||||
default-window-height { fixed 270; }
|
|
||||||
}
|
|
||||||
window-rule {
|
|
||||||
match title="^music$"
|
|
||||||
open-floating true
|
|
||||||
default-column-width { fixed 1000; }
|
|
||||||
default-window-height { fixed 800; }
|
|
||||||
}
|
|
||||||
window-rule {
|
|
||||||
draw-border-with-background false
|
|
||||||
geometry-corner-radius 12.000000 12.000000 12.000000 12.000000
|
|
||||||
clip-to-geometry true
|
|
||||||
}
|
|
||||||
animations { slowdown 0.500000; }
|
|
||||||
116
home/wms/sway
116
home/wms/sway
|
|
@ -1,5 +1,5 @@
|
||||||
font pango:monospace 8.000000
|
font pango:monospace 8.000000
|
||||||
floating_modifier Mod4
|
floating_modifier $mod
|
||||||
default_border pixel 2
|
default_border pixel 2
|
||||||
default_floating_border normal 2
|
default_floating_border normal 2
|
||||||
hide_edge_borders none
|
hide_edge_borders none
|
||||||
|
|
@ -12,62 +12,62 @@ workspace_auto_back_and_forth no
|
||||||
client.urgent #2f343a #900000 #ffffff #900000 #900000
|
client.urgent #2f343a #900000 #ffffff #900000 #900000
|
||||||
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
|
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
|
||||||
client.background #ffffff
|
client.background #ffffff
|
||||||
bindsym Mod4+1 workspace number 1
|
bindsym $mod+1 workspace number 1
|
||||||
bindsym Mod4+0 workspace number 10
|
bindsym $mod+0 workspace number 10
|
||||||
bindsym Mod4+2 workspace number 2
|
bindsym $mod+2 workspace number 2
|
||||||
bindsym Mod4+3 workspace number 3
|
bindsym $mod+3 workspace number 3
|
||||||
bindsym Mod4+4 workspace number 4
|
bindsym $mod+4 workspace number 4
|
||||||
bindsym Mod4+5 workspace number 5
|
bindsym $mod+5 workspace number 5
|
||||||
bindsym Mod4+6 workspace number 6
|
bindsym $mod+6 workspace number 6
|
||||||
bindsym Mod4+7 workspace number 7
|
bindsym $mod+7 workspace number 7
|
||||||
bindsym Mod4+8 workspace number 8
|
bindsym $mod+8 workspace number 8
|
||||||
bindsym Mod4+9 workspace number 9
|
bindsym $mod+9 workspace number 9
|
||||||
bindsym Mod4+Control+h workspace prev_on_output
|
bindsym $mod+Control+h workspace prev_on_output
|
||||||
bindsym Mod4+Control+l workspace next_on_output
|
bindsym $mod+Control+l workspace next_on_output
|
||||||
bindsym Mod4+Down focus down
|
bindsym $mod+Down focus down
|
||||||
bindsym Mod4+Left focus left
|
bindsym $mod+Left focus left
|
||||||
bindsym Mod4+Return exec foot
|
bindsym $mod+Return exec foot
|
||||||
bindsym Mod4+Right focus right
|
bindsym $mod+Right focus right
|
||||||
bindsym Mod4+Shift+0 move container to workspace number 10
|
bindsym $mod+Shift+0 move container to workspace number 10
|
||||||
bindsym Mod4+Shift+1 move container to workspace number 1
|
bindsym $mod+Shift+1 move container to workspace number 1
|
||||||
bindsym Mod4+Shift+2 move container to workspace number 2
|
bindsym $mod+Shift+2 move container to workspace number 2
|
||||||
bindsym Mod4+Shift+3 move container to workspace number 3
|
bindsym $mod+Shift+3 move container to workspace number 3
|
||||||
bindsym Mod4+Shift+4 move container to workspace number 4
|
bindsym $mod+Shift+4 move container to workspace number 4
|
||||||
bindsym Mod4+Shift+5 move container to workspace number 5
|
bindsym $mod+Shift+5 move container to workspace number 5
|
||||||
bindsym Mod4+Shift+6 move container to workspace number 6
|
bindsym $mod+Shift+6 move container to workspace number 6
|
||||||
bindsym Mod4+Shift+7 move container to workspace number 7
|
bindsym $mod+Shift+7 move container to workspace number 7
|
||||||
bindsym Mod4+Shift+8 move container to workspace number 8
|
bindsym $mod+Shift+8 move container to workspace number 8
|
||||||
bindsym Mod4+Shift+9 move container to workspace number 9
|
bindsym $mod+Shift+9 move container to workspace number 9
|
||||||
bindsym Mod4+Shift+Down move down
|
bindsym $mod+Shift+Down move down
|
||||||
bindsym Mod4+Shift+Left move left
|
bindsym $mod+Shift+Left move left
|
||||||
bindsym Mod4+Shift+Right move right
|
bindsym $mod+Shift+Right move right
|
||||||
bindsym Mod4+Shift+Up move up
|
bindsym $mod+Shift+Up move up
|
||||||
bindsym Mod4+Shift+c reload
|
bindsym $mod+Shift+c reload
|
||||||
bindsym Mod4+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
||||||
bindsym Mod4+Shift+h move left
|
bindsym $mod+Shift+h move left
|
||||||
bindsym Mod4+Shift+j move down
|
bindsym $mod+Shift+j move down
|
||||||
bindsym Mod4+Shift+k move up
|
bindsym $mod+Shift+k move up
|
||||||
bindsym Mod4+Shift+l move right
|
bindsym $mod+Shift+l move right
|
||||||
bindsym Mod4+Shift+minus move scratchpad
|
bindsym $mod+Shift+minus move scratchpad
|
||||||
bindsym Mod4+Shift+q kill
|
bindsym $mod+Shift+q kill
|
||||||
bindsym Mod4+Shift+s move scratchpad
|
bindsym $mod+Shift+s move scratchpad
|
||||||
bindsym Mod4+Shift+space floating toggle
|
bindsym $mod+Shift+space floating toggle
|
||||||
bindsym Mod4+Up focus up
|
bindsym $mod+Up focus up
|
||||||
bindsym Mod4+a focus parent
|
bindsym $mod+a focus parent
|
||||||
bindsym Mod4+b splith
|
bindsym $mod+b splith
|
||||||
bindsym Mod4+d exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf --bind=enter:replace-query+print-query | xargs swaymsg exec --'
|
bindsym $mod+d exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf --bind=enter:replace-query+print-query | xargs swaymsg exec --'
|
||||||
bindsym Mod4+e layout toggle split
|
bindsym $mod+e layout toggle split
|
||||||
bindsym Mod4+f fullscreen toggle
|
bindsym $mod+f fullscreen toggle
|
||||||
bindsym Mod4+h focus left
|
bindsym $mod+h focus left
|
||||||
bindsym Mod4+j focus down
|
bindsym $mod+j focus down
|
||||||
bindsym Mod4+k focus up
|
bindsym $mod+k focus up
|
||||||
bindsym Mod4+l focus right
|
bindsym $mod+l focus right
|
||||||
bindsym Mod4+minus scratchpad show
|
bindsym $mod+minus scratchpad show
|
||||||
bindsym Mod4+r mode resize
|
bindsym $mod+r mode resize
|
||||||
bindsym Mod4+s scratchpad show
|
bindsym $mod+s scratchpad show
|
||||||
bindsym Mod4+space focus mode_toggle
|
bindsym $mod+space focus mode_toggle
|
||||||
bindsym Mod4+t exec foot --title music --app-id mpd-control-foot ncmpcpp
|
bindsym $mod+t exec foot --title music --app-id mpd-control-foot ncmpcpp
|
||||||
bindsym Mod4+v splitv
|
bindsym $mod+v splitv
|
||||||
|
|
||||||
bindsym Print exec grim -g "$(slurp)" ~/Pictures/screenshots/screenshot-`date +%F-%T`.png
|
bindsym Print exec grim -g "$(slurp)" ~/Pictures/screenshots/screenshot-`date +%F-%T`.png
|
||||||
bindsym Shift_L+Control_L+B exec playerctl position 10-
|
bindsym Shift_L+Control_L+B exec playerctl position 10-
|
||||||
|
|
@ -140,7 +140,7 @@ exec kanshi
|
||||||
|
|
||||||
exec swaync
|
exec swaync
|
||||||
|
|
||||||
exec swaybg -m fill -i ~/.config/nixos/assets/twilight.png
|
exec awww -d
|
||||||
|
|
||||||
exec kde-indicator
|
exec kde-indicator
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,24 @@
|
||||||
nano = "nvim";
|
nano = "nvim";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.displayManager.ly.enable = true;
|
services.displayManager.ly = {
|
||||||
|
enable = true;
|
||||||
|
settings.animation = "colormix";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.monado = {
|
||||||
|
enable = true;
|
||||||
|
defaultRuntime = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.services.monado.environment = {
|
||||||
|
STEAMVR_LH_ENABLE = "1";
|
||||||
|
XRT_COMPOSITOR_COMPUTE = "1";
|
||||||
|
WMR_HANDTRACKING = "0";
|
||||||
|
AMD_VULKAN_ICD = "RADV";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.udev.packages = with pkgs; [xr-hardware];
|
||||||
|
|
||||||
boot.kernelModules = [ "kvm-amd" "vhost_vsock" "vfio_virqfd" "vhost-net" "vfio_pci" "vfio_iommu_type1" "vfio"];
|
boot.kernelModules = [ "kvm-amd" "vhost_vsock" "vfio_virqfd" "vhost-net" "vfio_pci" "vfio_iommu_type1" "vfio"];
|
||||||
boot.kernelParams = [ "amd_iommu=on" ];
|
boot.kernelParams = [ "amd_iommu=on" ];
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, pkgs, ... }:{
|
{ config, pkgs, ... }:{
|
||||||
imports = [
|
imports = [
|
||||||
./absolution.nix
|
./apalapucia.nix
|
||||||
../generic.nix
|
../generic.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
@ -37,11 +37,32 @@
|
||||||
gnupg.enable = true;
|
gnupg.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.sway.enable = (if config.var.class == "desktop" then true else false);
|
||||||
|
|
||||||
programs.gnupg.agent = {
|
programs.gnupg.agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableSSHSupport = true;
|
enableSSHSupport = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.settings.substituters = [
|
||||||
|
"https://nix-community.cachix.org"
|
||||||
|
"https://nixpkgs-wayland.cachix.org"
|
||||||
|
"https://cache.garnix.io"
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.settings.trusted-substituters = [
|
||||||
|
"https://nix-community.cachix.org"
|
||||||
|
"https://nixpkgs-wayalnd.cachix.org"
|
||||||
|
"https://cache.garnix.io"
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.settings.trusted-public-keys = [
|
||||||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
||||||
|
"nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
|
||||||
|
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||||
|
];
|
||||||
|
|
||||||
systemd.user.services.polkit-gnome-authentication-agent-1 = {
|
systemd.user.services.polkit-gnome-authentication-agent-1 = {
|
||||||
description = "polkit-gnome-authentication-agent-1";
|
description = "polkit-gnome-authentication-agent-1";
|
||||||
wantedBy = [ "graphical-session.target" ];
|
wantedBy = [ "graphical-session.target" ];
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
hostname = lib.mkOption { type = str;};
|
hostname = lib.mkOption { type = str;};
|
||||||
locale = lib.mkOption { type = str;};
|
locale = lib.mkOption { type = str;};
|
||||||
timezone = lib.mkOption { type = str;};
|
timezone = lib.mkOption { type = str;};
|
||||||
|
class = lib.mkOption { type = str;};
|
||||||
#[...]
|
#[...]
|
||||||
};
|
};
|
||||||
config.var = {
|
config.var = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue