Compare commits
14 Commits
dfb197b125
...
6613f56600
Author | SHA1 | Date | |
---|---|---|---|
6613f56600 | |||
d326cd0832 | |||
f0859a15b4 | |||
92e25958e5 | |||
a791daade3 | |||
0722fae9f0 | |||
91ed62194a | |||
7bc90a7723 | |||
02d957480d | |||
f59c9050c3 | |||
28cf6d4489 | |||
ece78f0ec6 | |||
c41aab707a | |||
![]() |
b8ebeed049 |
2
.github/workflows/hosts.yml
vendored
@ -28,7 +28,7 @@ jobs:
|
||||
ref: ${{ github.head_ref }}
|
||||
|
||||
- name: Install nix
|
||||
uses: nixbuild/nix-quick-install-action@v27
|
||||
uses: nixbuild/nix-quick-install-action@v28
|
||||
with:
|
||||
load_nixConfig: false
|
||||
nix_conf: |
|
||||
|
2
.github/workflows/iso.yml
vendored
@ -20,7 +20,7 @@ jobs:
|
||||
ref: ${{ github.head_ref }}
|
||||
|
||||
- name: Install nix
|
||||
uses: nixbuild/nix-quick-install-action@v27
|
||||
uses: nixbuild/nix-quick-install-action@v28
|
||||
with:
|
||||
load_nixConfig: false
|
||||
nix_conf: |
|
||||
|
113
flake.lock
generated
@ -8,11 +8,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717970544,
|
||||
"narHash": "sha256-YX43aaegfqjXaZ3S+z0JI7SKOEE1Afqm/I9FBIezJ7A=",
|
||||
"lastModified": 1718735045,
|
||||
"narHash": "sha256-5PaPrMjQu0ojps12ecRO6qFntCU+pkUCrJIjDUFJknE=",
|
||||
"owner": "ezKEa",
|
||||
"repo": "aagl-gtk-on-nix",
|
||||
"rev": "85c380e4e80fbc21d25165626ad2897cbb11af4d",
|
||||
"rev": "2d4d6c0f286bd6901c8eab5e2d08593ca3394d6c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -177,6 +177,24 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"catppuccin-vsc": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1716179347,
|
||||
"narHash": "sha256-DPiP4yLRcPgWgrnCC/tRp5vUk9teZIfsCT2r8jr1V8A=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "vscode",
|
||||
"rev": "b7a8806f7532a091b0170f281dbc7f35c3fc7761",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "catppuccin",
|
||||
"repo": "vscode",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crane": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -201,7 +219,7 @@
|
||||
"deploy-rs": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"utils": "utils"
|
||||
},
|
||||
"locked": {
|
||||
@ -223,7 +241,7 @@
|
||||
"cachix": "cachix",
|
||||
"flake-compat": "flake-compat_5",
|
||||
"nix": "nix_2",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
@ -248,7 +266,7 @@
|
||||
"flake-compat"
|
||||
],
|
||||
"nix": "nix",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"poetry2nix": "poetry2nix",
|
||||
"pre-commit-hooks": [
|
||||
"devenv",
|
||||
@ -877,7 +895,7 @@
|
||||
},
|
||||
"hyprlang_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
@ -1018,7 +1036,7 @@
|
||||
"flake-compat": "flake-compat_6",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nix": "nix_3",
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1669478601,
|
||||
@ -1087,7 +1105,7 @@
|
||||
"nix-direnv": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"nixpkgs": "nixpkgs_12",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
@ -1167,7 +1185,7 @@
|
||||
},
|
||||
"nix-index-database": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
"nixpkgs": "nixpkgs_11"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715483403,
|
||||
@ -1192,11 +1210,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1718328588,
|
||||
"narHash": "sha256-dTuHdsZkPJg2YS7S/04d5gLpLqCmKEGuJkRO0yHklgo=",
|
||||
"lastModified": 1718673998,
|
||||
"narHash": "sha256-0fYv4qkbp1buCAEIuFnsN0NUFcI6SlSHiuG5YwDl5kU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "ae25cb00075c72a2a91497814a11a00f567f5f75",
|
||||
"rev": "b1d364d5f9d3d7fee8fa854d553cd95d69b9ff4c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1235,7 +1253,7 @@
|
||||
"nix_3": {
|
||||
"inputs": {
|
||||
"lowdown-src": "lowdown-src",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"nixpkgs-regression": "nixpkgs-regression_3"
|
||||
},
|
||||
"locked": {
|
||||
@ -1445,6 +1463,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1669378442,
|
||||
"narHash": "sha256-nm+4PN0A4SnV0SzEchxrMyKPvI3Ld/aoom4PnHeHucs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0faaf0a9bb6dedb69bfd43ac06fb27fadc476c51",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-22.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1715266358,
|
||||
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
|
||||
@ -1460,7 +1494,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"nixpkgs_12": {
|
||||
"locked": {
|
||||
"lastModified": 1717868076,
|
||||
"narHash": "sha256-c83Y9t815Wa34khrux81j8K8ET94ESmCuwORSKm2bQY=",
|
||||
@ -1476,7 +1510,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_12": {
|
||||
"nixpkgs_13": {
|
||||
"locked": {
|
||||
"lastModified": 1718160348,
|
||||
"narHash": "sha256-9YrUjdztqi4Gz8n3mBuqvCkMo4ojrA6nASwyIKWMpus=",
|
||||
@ -1492,7 +1526,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_13": {
|
||||
"nixpkgs_14": {
|
||||
"locked": {
|
||||
"lastModified": 1717112898,
|
||||
"narHash": "sha256-7R2ZvOnvd9h8fDd65p0JnB7wXfUvreox3xFdYWd1BnY=",
|
||||
@ -1541,6 +1575,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1712963716,
|
||||
"narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cfd6b5fc90b15709b780a5a1619695a88505a176",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1702272962,
|
||||
"narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=",
|
||||
@ -1556,7 +1606,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1692808169,
|
||||
"narHash": "sha256-x9Opq06rIiwdwGeK2Ykj69dNc2IvUH1fY55Wm7atwrE=",
|
||||
@ -1572,7 +1622,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1713361204,
|
||||
"narHash": "sha256-TA6EDunWTkc5FvDCqU3W2T3SFn0gRZqh6D/hJnM02MM=",
|
||||
@ -1588,7 +1638,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1708475490,
|
||||
"narHash": "sha256-g1v0TsWBQPX97ziznfJdWhgMyMGtoBFs102xSYO4syU=",
|
||||
@ -1604,7 +1654,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1657693803,
|
||||
"narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=",
|
||||
@ -1620,22 +1670,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1669378442,
|
||||
"narHash": "sha256-nm+4PN0A4SnV0SzEchxrMyKPvI3Ld/aoom4PnHeHucs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0faaf0a9bb6dedb69bfd43ac06fb27fadc476c51",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-22.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"poetry2nix": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
@ -1724,7 +1758,7 @@
|
||||
"flake-compat": "flake-compat_9",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"libnbtplusplus": "libnbtplusplus",
|
||||
"nixpkgs": "nixpkgs_13",
|
||||
"nixpkgs": "nixpkgs_14",
|
||||
"pre-commit-hooks": "pre-commit-hooks_2"
|
||||
},
|
||||
"locked": {
|
||||
@ -1752,6 +1786,7 @@
|
||||
"base16-tokyonight-scheme": "base16-tokyonight-scheme",
|
||||
"cassowary": "cassowary",
|
||||
"catppuccin": "catppuccin",
|
||||
"catppuccin-vsc": "catppuccin-vsc",
|
||||
"deploy-rs": "deploy-rs",
|
||||
"devenv": "devenv",
|
||||
"disko": "disko",
|
||||
@ -1767,7 +1802,7 @@
|
||||
"nix-fast-build": "nix-fast-build",
|
||||
"nix-vscode-marketplace": "nix-vscode-marketplace",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixpkgs": "nixpkgs_12",
|
||||
"nixpkgs": "nixpkgs_13",
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"nixpkgs-stable": "nixpkgs-stable_3",
|
||||
"prismlauncher": "prismlauncher",
|
||||
|
@ -36,6 +36,7 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
catppuccin.url = "github:catppuccin/nix";
|
||||
catppuccin-vsc.url = "github:catppuccin/vscode";
|
||||
deploy-rs.url = "github:serokell/deploy-rs";
|
||||
devenv.url = "github:cachix/devenv";
|
||||
disko = {
|
||||
|
44
profiles/applications/home-apps.nix
Normal file
@ -0,0 +1,44 @@
|
||||
{ config, pkgs, lib, ... }: {
|
||||
# TODO: settings?
|
||||
home-manager.users.${config.mainuser} = {
|
||||
programs = {
|
||||
bat = {
|
||||
enable = true;
|
||||
# config = {};
|
||||
extraPackages = with pkgs.bat-extras; [ batdiff batgrep batman batwatch ];
|
||||
# syntaxes = {};
|
||||
# themes = {};
|
||||
};
|
||||
bottom.enable = true;
|
||||
fzf.enable = true;
|
||||
fzf.enableZshIntegration = true;
|
||||
gitui = {
|
||||
enable = true;
|
||||
# keyConfig = '''';
|
||||
};
|
||||
micro = {
|
||||
enable = true;
|
||||
# settings = {};
|
||||
};
|
||||
zathura = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
set selection-clipboard clipboard
|
||||
'';
|
||||
# mappings = {};
|
||||
# options = {};
|
||||
};
|
||||
zsh.syntaxHighlighting.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
defaultApplications = {
|
||||
pdf = let
|
||||
home = config.home-manager.users.${config.mainuser};
|
||||
zathura-pkg = home.programs.zathura.package;
|
||||
in {
|
||||
cmd = lib.getExe zathura-pkg;
|
||||
desktop = "zathura";
|
||||
};
|
||||
};
|
||||
}
|
@ -10,43 +10,46 @@ in
|
||||
home-manager.users.${config.mainuser} = {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
font.name = "${thm.fonts.mono.family} ${thm.fontSizes.small.str}";
|
||||
# font.package = ;
|
||||
font.name = thm.fonts.mono.family;
|
||||
font.size = thm.fontSizes.small.int;
|
||||
shellIntegration.enableZshIntegration = true;
|
||||
settings = {
|
||||
foreground = "#${thm.base05-hex}";
|
||||
background = "#${thm.base00-hex}";
|
||||
selection_background = "#${thm.base05-hex}";
|
||||
selection_foreground = "#${thm.base00-hex}";
|
||||
url_color = "#${thm.base04-hex}";
|
||||
active_border_color = "#${thm.base03-hex}";
|
||||
inactive_border_color = "#${thm.base01-hex}";
|
||||
active_tab_background = "#${thm.base00-hex}";
|
||||
active_tab_foreground = "#${thm.base05-hex}";
|
||||
inactive_tab_background = "#${thm.base01-hex}";
|
||||
inactive_tab_foreground = "#${thm.base04-hex}";
|
||||
tab_bar_background = "#${thm.base01-hex}";
|
||||
cursor = "#${thm.base05-hex}";
|
||||
color0 = "#${thm.base00-hex}";
|
||||
color1 = "#${thm.base08-hex}";
|
||||
color2 = "#${thm.base0B-hex}";
|
||||
color3 = "#${thm.base0A-hex}";
|
||||
color4 = "#${thm.base0D-hex}";
|
||||
color5 = "#${thm.base0E-hex}";
|
||||
color6 = "#${thm.base0C-hex}";
|
||||
color7 = "#${thm.base05-hex}";
|
||||
color8 = "#${thm.base03-hex}";
|
||||
color9 = "#${thm.base08-hex}";
|
||||
color10 = "#${thm.base0B-hex}";
|
||||
color11 = "#${thm.base0A-hex}";
|
||||
color12 = "#${thm.base0D-hex}";
|
||||
color13 = "#${thm.base0E-hex}";
|
||||
color14 = "#${thm.base0C-hex}";
|
||||
color15 = "#${thm.base07-hex}";
|
||||
color16 = "#${thm.base09-hex}";
|
||||
color17 = "#${thm.base0F-hex}";
|
||||
color18 = "#${thm.base01-hex}";
|
||||
color19 = "#${thm.base02-hex}";
|
||||
color20 = "#${thm.base04-hex}";
|
||||
color21 = "#${thm.base06-hex}";
|
||||
# foreground = "#${thm.base05-hex}";
|
||||
# background = "#${thm.base00-hex}";
|
||||
# selection_background = "#${thm.base05-hex}";
|
||||
# selection_foreground = "#${thm.base00-hex}";
|
||||
# url_color = "#${thm.base04-hex}";
|
||||
# active_border_color = "#${thm.base03-hex}";
|
||||
# inactive_border_color = "#${thm.base01-hex}";
|
||||
# active_tab_background = "#${thm.base00-hex}";
|
||||
# active_tab_foreground = "#${thm.base05-hex}";
|
||||
# inactive_tab_background = "#${thm.base01-hex}";
|
||||
# inactive_tab_foreground = "#${thm.base04-hex}";
|
||||
# tab_bar_background = "#${thm.base01-hex}";
|
||||
# cursor = "#${thm.base05-hex}";
|
||||
# color0 = "#${thm.base00-hex}";
|
||||
# color1 = "#${thm.base08-hex}";
|
||||
# color2 = "#${thm.base0B-hex}";
|
||||
# color3 = "#${thm.base0A-hex}";
|
||||
# color4 = "#${thm.base0D-hex}";
|
||||
# color5 = "#${thm.base0E-hex}";
|
||||
# color6 = "#${thm.base0C-hex}";
|
||||
# color7 = "#${thm.base05-hex}";
|
||||
# color8 = "#${thm.base03-hex}";
|
||||
# color9 = "#${thm.base08-hex}";
|
||||
# color10 = "#${thm.base0B-hex}";
|
||||
# color11 = "#${thm.base0A-hex}";
|
||||
# color12 = "#${thm.base0D-hex}";
|
||||
# color13 = "#${thm.base0E-hex}";
|
||||
# color14 = "#${thm.base0C-hex}";
|
||||
# color15 = "#${thm.base07-hex}";
|
||||
# color16 = "#${thm.base09-hex}";
|
||||
# color17 = "#${thm.base0F-hex}";
|
||||
# color18 = "#${thm.base01-hex}";
|
||||
# color19 = "#${thm.base02-hex}";
|
||||
# color20 = "#${thm.base04-hex}";
|
||||
# color21 = "#${thm.base06-hex}";
|
||||
enable_audio_bell = false;
|
||||
confirm_os_window_close = 0;
|
||||
};
|
||||
|
@ -19,10 +19,10 @@
|
||||
height = 80;
|
||||
defaultTimeout = 10000;
|
||||
maxVisible = 10;
|
||||
backgroundColor = "#${theme.base00-hex}AA";
|
||||
textColor = "#${theme.base05-hex}";
|
||||
borderColor = "#${theme.base0D-hex}AA";
|
||||
progressColor = "over #${theme.base0B-hex}";
|
||||
# backgroundColor = "#${theme.base00-hex}AA";
|
||||
# textColor = "#${theme.base05-hex}";
|
||||
# borderColor = "#${theme.base0D-hex}AA";
|
||||
# progressColor = "over #${theme.base0B-hex}";
|
||||
iconPath = "${theme.iconPackage}/share/icons/${theme.iconTheme}";
|
||||
maxIconSize = 24;
|
||||
};
|
@ -5,7 +5,7 @@ with config.deviceSpecific; {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.packages = with pkgs; [
|
||||
# --- cli ---
|
||||
bat
|
||||
# bat
|
||||
comma
|
||||
curl
|
||||
curlie
|
||||
@ -32,8 +32,8 @@ with config.deviceSpecific; {
|
||||
usbutils
|
||||
zip
|
||||
# --- tui ---
|
||||
bottom
|
||||
micro
|
||||
# bottom
|
||||
# micro
|
||||
ncdu
|
||||
procs
|
||||
# --- gui ---
|
||||
|
@ -15,7 +15,7 @@ in
|
||||
package = pkgs.rofi-wayland;
|
||||
font = "${thm.fonts.mono.family} ${thm.fontSizes.header.str}";
|
||||
terminal = config.defaultApplications.term.cmd;
|
||||
theme = "${themeFile}";
|
||||
# theme = "${themeFile}";
|
||||
};
|
||||
};
|
||||
}
|
@ -64,7 +64,9 @@ in
|
||||
ext-vscode.pkief.material-icon-theme
|
||||
ext-vscode.streetsidesoftware.code-spell-checker
|
||||
ext-vscode.streetsidesoftware.code-spell-checker-russian
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.ultram4rine.vscode-choosealicense
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.yzhang.markdown-all-in-one
|
||||
# Rust
|
||||
ext-vscode.gruntfuggly.todo-tree
|
||||
@ -75,6 +77,8 @@ in
|
||||
ext-vscode.tamasfe.even-better-toml
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.vadimcn.vscode-lldb
|
||||
# Golang
|
||||
ext-vscode.golang.go
|
||||
];
|
||||
# mutableExtensionsDir = false;
|
||||
userSettings = {
|
||||
@ -112,6 +116,12 @@ in
|
||||
"git-graph.repository.sign.tags" = true;
|
||||
"git.autofetch" = false;
|
||||
"git.enableCommitSigning" = true;
|
||||
"go.useLanguageServer" = true;
|
||||
"gopls" = {
|
||||
"ui.semanticTokens" = true;
|
||||
"formatting.gofumpt" = true;
|
||||
"ui.diagnostic.staticcheck" = true;
|
||||
};
|
||||
"license.author" = "Dmitriy <ataraxiadev@ataraxiadev.com>";
|
||||
"license.default" = "mit";
|
||||
"license.extension" = ".md";
|
||||
|
@ -1,23 +0,0 @@
|
||||
{ config, lib, ... }:
|
||||
let
|
||||
home = config.home-manager.users.${config.mainuser};
|
||||
zathura-pkg = home.programs.zathura.package;
|
||||
in{
|
||||
defaultApplications = {
|
||||
pdf = {
|
||||
cmd = lib.getExe zathura-pkg;
|
||||
desktop = "zathura";
|
||||
};
|
||||
};
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
set selection-clipboard clipboard
|
||||
'';
|
||||
# mappings = {};
|
||||
# options = {};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,25 +1,15 @@
|
||||
{ config, pkgs, lib, inputs, ... }:
|
||||
let
|
||||
jre21 = pkgs.temurin-bin;
|
||||
jre17 = pkgs.temurin-bin-17;
|
||||
jvmOpts = lib.concatStringsSep " " [
|
||||
"-XX:+UseG1GC"
|
||||
"-XX:+ParallelRefProcEnabled"
|
||||
"-XX:MaxGCPauseMillis=200"
|
||||
"-XX:+UnlockExperimentalVMOptions"
|
||||
"-XX:+DisableExplicitGC"
|
||||
"-XX:+UseZGC"
|
||||
"-XX:+ZGenerational"
|
||||
"-XX:-ZUncommit"
|
||||
"-XX:-ZProactive"
|
||||
"-XX:+AlwaysPreTouch"
|
||||
"-XX:G1NewSizePercent=40"
|
||||
"-XX:G1MaxNewSizePercent=50"
|
||||
"-XX:G1HeapRegionSize=16M"
|
||||
"-XX:G1ReservePercent=15"
|
||||
"-XX:G1HeapWastePercent=5"
|
||||
"-XX:G1MixedGCCountTarget=4"
|
||||
"-XX:InitiatingHeapOccupancyPercent=20"
|
||||
"-XX:G1MixedGCLiveThresholdPercent=90"
|
||||
"-XX:G1RSetUpdatingPauseTimePercent=5"
|
||||
"-XX:SurvivorRatio=32"
|
||||
"-XX:+PerfDisableSharedMem"
|
||||
"-XX:MaxTenuringThreshold=1"
|
||||
"-XX:+UseTransparentHugePages"
|
||||
];
|
||||
|
||||
rsyncSSHKeys = config.users.users.${config.mainuser}.openssh.authorizedKeys.keys;
|
||||
@ -32,8 +22,14 @@ let
|
||||
online-mode = false;
|
||||
spawn-protection = 0;
|
||||
};
|
||||
in {
|
||||
imports = [ inputs.mms.module ];
|
||||
|
||||
instances = config.services.modded-minecraft-servers.instances;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
inputs.mms.module
|
||||
inputs.ataraxiasjel-nur.nixosModules.rustic
|
||||
];
|
||||
services.modded-minecraft-servers = {
|
||||
eula = true;
|
||||
instances = {
|
||||
@ -44,52 +40,123 @@ in {
|
||||
jvmInitialAllocation = "6144m";
|
||||
jvmPackage = jre17;
|
||||
serverConfig = defaults // {
|
||||
server-port = 25565;
|
||||
rcon-port = 25566;
|
||||
server-port = 25567;
|
||||
rcon-port = 25568;
|
||||
motd = "StaTech";
|
||||
max-world-size = 50000;
|
||||
level-seed = "-4411466874705470064";
|
||||
};
|
||||
};
|
||||
all-of-create = {
|
||||
enable = true;
|
||||
inherit rsyncSSHKeys jvmOpts;
|
||||
jvmMaxAllocation = "4096m";
|
||||
jvmInitialAllocation = "4096m";
|
||||
jvmPackage = jre21;
|
||||
serverConfig = defaults // {
|
||||
server-port = 25565;
|
||||
rcon-port = 25566;
|
||||
motd = "All of Create";
|
||||
max-world-size = 50000;
|
||||
level-seed = "-6893059259197159072";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
persist.state.directories = [ "/var/lib/mc-statech" ];
|
||||
persist.state.directories = map (x: "/var/lib/mc-${x}") (lib.attrNames instances);
|
||||
|
||||
# secrets.restic-mc-pass.services = [ "restic-backups-mc-servers.service" ];
|
||||
# secrets.restic-mc-repo.services = [ "restic-backups-mc-servers.service" ];
|
||||
# services.restic.backups.mc-servers = {
|
||||
# initialize = true;
|
||||
# passwordFile = config.secrets.restic-mc-pass.decrypted;
|
||||
# repositoryFile = config.secrets.restic-mc-repo.decrypted;
|
||||
# paths = [ "/var/lib/mc-statech" ];
|
||||
# exclude = [ "/var/lib/mc-statech/backups" ];
|
||||
# environmentFile = "${pkgs.writeText "restic.env" ''
|
||||
# GOMAXPROCS=1
|
||||
# MCRCON_PORT=25566
|
||||
# MCRCON_PASS=whatisloveohbabydonthurtmedonthurtmenomore
|
||||
# ''}";
|
||||
# extraBackupArgs = [ "--no-scan" ];
|
||||
# backupPrepareCommand = ''
|
||||
# if ! systemctl is-active --quiet mc-statech.service; then
|
||||
# echo "Minecraft server is not active. Skipping restic backup."
|
||||
# exit 1
|
||||
# fi
|
||||
# ${pkgs.mcrcon}/bin/mcrcon "say Restic backup is started!" save-off "save-all"
|
||||
# sleep 3
|
||||
# '';
|
||||
# backupCleanupCommand = ''
|
||||
# systemctl is-active --quiet mc-statech.service && ${pkgs.mcrcon}/bin/mcrcon "say Restic backup is done!" save-on
|
||||
# '';
|
||||
# timerConfig = {
|
||||
# OnCalendar = "*:0/15";
|
||||
# };
|
||||
# pruneOpts = [
|
||||
# "--keep-last 12"
|
||||
# "--keep-hourly 12"
|
||||
# "--keep-daily 5"
|
||||
# "--keep-weekly 2"
|
||||
# "--keep-monthly 0"
|
||||
# "--keep-yearly 0"
|
||||
# ];
|
||||
# };
|
||||
# Rustic backup for all servers, including disabled ones
|
||||
sops.secrets.rustic-workstation-pass.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rustic-minecraft-s3-env.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
services.rustic.backups = rec {
|
||||
workstation-minecraft-backup = {
|
||||
backup = true;
|
||||
prune = false;
|
||||
initialize = false;
|
||||
environmentFile = config.sops.secrets.rustic-minecraft-s3-env.path;
|
||||
pruneOpts = [ "--repack-cacheable-only=false" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "*:0/15";
|
||||
};
|
||||
backupPrepareCommand = ''
|
||||
start_backup=false
|
||||
${lib.strings.concatLines (
|
||||
map (x: "systemctl is-active --quiet mc-${x}.service && start_backup=true") (
|
||||
lib.attrNames instances
|
||||
)
|
||||
)}
|
||||
if [ "$start_backup" = false ]; then
|
||||
echo "No Minecraft servers are running. Skip backup."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
${lib.strings.concatLines (
|
||||
map (x: ''
|
||||
if systemctl is-active --quiet mc-${x}.service; then
|
||||
export MCRCON_PORT=${toString instances.${x}.serverConfig.rcon-port}
|
||||
export MCRCON_PASS=${instances.${x}.serverConfig.rcon-password}
|
||||
${pkgs.mcrcon}/bin/mcrcon "say Rustic backup is started!" save-off "save-all"
|
||||
fi
|
||||
'') (lib.attrNames instances)
|
||||
)}
|
||||
sleep 3
|
||||
'';
|
||||
backupCleanupCommand = ''
|
||||
${lib.strings.concatLines (
|
||||
map (x: ''
|
||||
if systemctl is-active --quiet mc-${x}.service; then
|
||||
export MCRCON_PORT=${toString instances.${x}.serverConfig.rcon-port}
|
||||
export MCRCON_PASS=${instances.${x}.serverConfig.rcon-password}
|
||||
${pkgs.mcrcon}/bin/mcrcon "say Rustic backup is done!" save-on
|
||||
fi
|
||||
'') (lib.attrNames instances)
|
||||
)}
|
||||
'';
|
||||
settings = let
|
||||
label = "workstation-minecraft";
|
||||
in {
|
||||
repository = {
|
||||
repository = "opendal:s3";
|
||||
password-file = config.sops.secrets.rustic-workstation-pass.path;
|
||||
options = {
|
||||
root = label;
|
||||
bucket = "rustic-backups";
|
||||
region = "us-east-1";
|
||||
endpoint = "https://s3.ataraxiadev.com";
|
||||
};
|
||||
};
|
||||
backup = {
|
||||
host = config.device;
|
||||
label = label;
|
||||
ignore-devid = true;
|
||||
group-by = "label";
|
||||
skip-identical-parent = true;
|
||||
glob = [ "!/var/lib/**/backups" ];
|
||||
sources = [{
|
||||
source = lib.strings.concatStringsSep " " (map (x: "/var/lib/mc-${x}") (lib.attrNames instances));
|
||||
}];
|
||||
};
|
||||
forget = {
|
||||
filter-label = [ label ];
|
||||
group-by = "label";
|
||||
prune = true;
|
||||
keep-hourly = 6;
|
||||
keep-daily = 2;
|
||||
keep-weekly = 1;
|
||||
keep-monthly = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
workstation-minecraft-prune = workstation-minecraft-backup // {
|
||||
backup = false;
|
||||
prune = true;
|
||||
createWrapper = false;
|
||||
backupPrepareCommand = null;
|
||||
backupCleanupCommand = null;
|
||||
timerConfig = {
|
||||
OnCalendar = "hourly";
|
||||
Persistent = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -66,7 +66,7 @@
|
||||
|
||||
cursorPackage = pkgs.bibata-cursors-tokyonight;
|
||||
# cursorPackage = pkgs.bibata-cursors;
|
||||
cursorSize = 16;
|
||||
cursorSize = 24;
|
||||
cursorTheme = "Bibata-Modern-TokyoNight";
|
||||
};
|
||||
};
|
||||
|
131
profiles/workspace/catppuccin.nix
Normal file
@ -0,0 +1,131 @@
|
||||
{ config, pkgs, lib, inputs, ... }:
|
||||
let
|
||||
thm = config.lib.base16.theme;
|
||||
# this capitalizes the first letter in a string.
|
||||
mkUpper =
|
||||
str:
|
||||
(lib.toUpper (builtins.substring 0 1 str)) +
|
||||
(builtins.substring 1 (builtins.stringLength str) str);
|
||||
|
||||
accent = "mauve";
|
||||
# accent = "lavender";
|
||||
flavor = "mocha";
|
||||
size = "standard"; # "standard" "compact"
|
||||
tweaks = [ "normal" ]; # "black" "rimless" "normal"
|
||||
flavorUpper = mkUpper flavor;
|
||||
accentUpper = mkUpper accent;
|
||||
sizeUpper = mkUpper size;
|
||||
gtkTheme = if flavor == "latte" then "Light" else "Dark";
|
||||
in
|
||||
{
|
||||
imports = [ inputs.catppuccin.nixosModules.catppuccin ];
|
||||
catppuccin.accent = accent;
|
||||
catppuccin.flavor = flavor;
|
||||
boot.loader.grub.catppuccin.enable = true;
|
||||
console.catppuccin.enable = true;
|
||||
|
||||
home-manager.users.${config.mainuser} = rec {
|
||||
imports = [ inputs.catppuccin.homeManagerModules.catppuccin ];
|
||||
catppuccin.accent = accent;
|
||||
catppuccin.flavor = flavor;
|
||||
|
||||
qt.style.catppuccin.enable = true;
|
||||
qt.style.catppuccin.apply = true;
|
||||
services.mako.catppuccin.enable = true;
|
||||
programs = {
|
||||
bat.catppuccin.enable = true;
|
||||
bottom.catppuccin.enable = true;
|
||||
fzf.catppuccin.enable = true;
|
||||
gitui.catppuccin.enable = true;
|
||||
glamour.catppuccin.enable = true;
|
||||
kitty.catppuccin.enable = true;
|
||||
micro.catppuccin.enable = true;
|
||||
mpv.catppuccin.enable = true;
|
||||
rofi.catppuccin.enable = true;
|
||||
zathura.catppuccin.enable = true;
|
||||
zsh.syntaxHighlighting.enable = true;
|
||||
zsh.syntaxHighlighting.catppuccin.enable = true;
|
||||
waybar.catppuccin.enable = true;
|
||||
waybar.catppuccin.mode = "createLink";
|
||||
|
||||
vscode = {
|
||||
extensions = let
|
||||
ext-vscode = inputs.nix-vscode-marketplace.extensions.${pkgs.system}.vscode-marketplace;
|
||||
in [
|
||||
ext-vscode.alexdauenhauer.catppuccin-noctis
|
||||
ext-vscode.catppuccin.catppuccin-vsc-icons
|
||||
(inputs.catppuccin-vsc.packages.${pkgs.system}.catppuccin-vsc.override {
|
||||
accent = accent;
|
||||
boldKeywords = false;
|
||||
italicComments = false;
|
||||
italicKeywords = false;
|
||||
extraBordersEnabled = false;
|
||||
workbenchMode = "flat";
|
||||
bracketMode = "dimmed";
|
||||
colorOverrides = {
|
||||
mocha = {
|
||||
base = "#1c1c2d";
|
||||
mantle = "#191925";
|
||||
crust = "#151511";
|
||||
};
|
||||
};
|
||||
customUIColors = {
|
||||
"statusBar.foreground" = "accent";
|
||||
};
|
||||
})
|
||||
];
|
||||
userSettings = {
|
||||
"editor.semanticHighlighting.enabled" = lib.mkForce true;
|
||||
"terminal.integrated.minimumContrastRatio" = lib.mkForce 1;
|
||||
"window.titleBarStyle" = lib.mkForce "custom";
|
||||
"workbench.colorTheme" = lib.mkForce "Catppuccin ${flavorUpper}";
|
||||
"workbench.iconTheme" = lib.mkForce "catppuccin-${flavor}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.extraConfig = ''
|
||||
exec=hyprctl setcursor catppuccin-${flavor}-${accent}-cursors ${toString thm.cursorSize}
|
||||
'';
|
||||
|
||||
# GTK
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Catppuccin-${flavorUpper}-${sizeUpper}-${accentUpper}-${gtkTheme}";
|
||||
package = pkgs.catppuccin-gtk.override {
|
||||
inherit tweaks;
|
||||
accents = [ accent ];
|
||||
variant = flavor;
|
||||
};
|
||||
};
|
||||
cursorTheme = {
|
||||
name = "catppuccin-${flavor}-${accent}-cursors";
|
||||
package = pkgs.catppuccin-cursors.${flavor + accentUpper};
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Papirus-${gtkTheme}";
|
||||
package = pkgs.catppuccin-papirus-folders.override { inherit accent flavor; };
|
||||
};
|
||||
font = {
|
||||
name = "${thm.fonts.main.family}";
|
||||
size = thm.fontSizes.normal.int;
|
||||
};
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
home.sessionVariables.GTK_THEME = gtk.theme.name;
|
||||
};
|
||||
|
||||
themes.base16.extraParams = {
|
||||
iconTheme = lib.mkForce "Papirus-${gtkTheme}";
|
||||
iconPackage = lib.mkForce (pkgs.catppuccin-papirus-folders.override { inherit accent flavor; });
|
||||
cursorPackage = lib.mkForce (pkgs.catppuccin-cursors.${flavor + accentUpper});
|
||||
cursorTheme = lib.mkForce "catppuccin-${flavor}-${accent}-cursors";
|
||||
cursorSize = lib.mkForce 32;
|
||||
};
|
||||
}
|
@ -9,7 +9,7 @@ in {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.pointerCursor = {
|
||||
package = thm.cursorPackage;
|
||||
name = "Bibata-Modern-TokyoNight";
|
||||
name = thm.cursorTheme;
|
||||
size = thm.cursorSize;
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
|
@ -1,69 +1,9 @@
|
||||
{ pkgs, config, inputs, ... }:
|
||||
let
|
||||
thm = config.lib.base16.theme;
|
||||
in {
|
||||
nixpkgs.overlays = [
|
||||
(_self: _super: {
|
||||
generated-gtk-theme =
|
||||
pkgs.callPackage "${inputs.rycee}/pkgs/materia-theme" {
|
||||
configBase16 = {
|
||||
name = "Generated";
|
||||
kind = "dark";
|
||||
colors = {
|
||||
base00.hex.rgb = "${thm.base00-hex}";
|
||||
base01.hex.rgb = "${thm.base01-hex}";
|
||||
base02.hex.rgb = "${thm.base02-hex}";
|
||||
base03.hex.rgb = "${thm.base03-hex}";
|
||||
base04.hex.rgb = "${thm.base04-hex}";
|
||||
base05.hex.rgb = "${thm.base05-hex}";
|
||||
base06.hex.rgb = "${thm.base06-hex}";
|
||||
base07.hex.rgb = "${thm.base07-hex}";
|
||||
base08.hex.rgb = "${thm.base08-hex}";
|
||||
base09.hex.rgb = "${thm.base09-hex}";
|
||||
base0A.hex.rgb = "${thm.base0A-hex}";
|
||||
base0B.hex.rgb = "${thm.base0B-hex}";
|
||||
base0C.hex.rgb = "${thm.base0C-hex}";
|
||||
base0D.hex.rgb = "${thm.base0D-hex}";
|
||||
base0E.hex.rgb = "${thm.base0E-hex}";
|
||||
base0F.hex.rgb = "${thm.base0F-hex}";
|
||||
};
|
||||
};
|
||||
};
|
||||
})
|
||||
];
|
||||
{ pkgs, config, lib, ... }:
|
||||
|
||||
{
|
||||
gtk.iconCache.enable = true;
|
||||
programs.dconf.enable = true;
|
||||
services.dbus.packages = with pkgs; [ dconf gcr ];
|
||||
home-manager.users.${config.mainuser} = {
|
||||
gtk = {
|
||||
enable = true;
|
||||
iconTheme = {
|
||||
name = "${thm.iconTheme}";
|
||||
package = thm.iconPackage;
|
||||
};
|
||||
# theme = {
|
||||
# name = "Generated";
|
||||
# package = pkgs.generated-gtk-theme;
|
||||
# };
|
||||
theme = {
|
||||
name = "RosePine-Main-BL";
|
||||
package = pkgs.rosepine-gtk-theme;
|
||||
};
|
||||
font = {
|
||||
name = "${thm.fonts.main.family}";
|
||||
size = thm.fontSizes.normal.int;
|
||||
};
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
# home.sessionVariables.GTK_THEME = "Generated";
|
||||
home.sessionVariables.GTK_THEME = "RosePine-Main-BL";
|
||||
};
|
||||
persist.state.homeDirectories = [
|
||||
".config/dconf"
|
||||
];
|
||||
|
||||
persist.state.homeDirectories = [ ".config/dconf" ];
|
||||
}
|
||||
|
@ -78,8 +78,8 @@ in with config.deviceSpecific; with lib; {
|
||||
}
|
||||
decoration {
|
||||
rounding=0
|
||||
active_opacity=0.92
|
||||
inactive_opacity=0.75
|
||||
active_opacity=0.95
|
||||
inactive_opacity=0.85
|
||||
fullscreen_opacity=1.0
|
||||
drop_shadow=true
|
||||
shadow_range=12
|
||||
@ -149,6 +149,7 @@ in with config.deviceSpecific; with lib; {
|
||||
bind=${modifier},f11,exec,sleep 1 && hyprctl dispatch dpms off
|
||||
bind=${modifier},f12,exec,sleep 1 && hyprctl dispatch dpms on
|
||||
|
||||
bind=${modifier},p,exec,${pkgs.wlogout}/bin/wlogout -b 5
|
||||
bind=${modifier},escape,exec,${apps.monitor.cmd}
|
||||
bind=${modifier},w,exec,${apps.dmenu.desktop} -show run
|
||||
bind=${modifier}CTRL,w,exec,${apps.dmenu.desktop} -show drun -modi drun -show-icons
|
||||
@ -281,10 +282,11 @@ in with config.deviceSpecific; with lib; {
|
||||
env=QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||
env=QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||
env=QT_QPA_PLATFORMTHEME=qt5ct
|
||||
env=GSETTINGS_SCHEMA_DIR=${pkgs.glib.getSchemaPath pkgs.gsettings-desktop-schemas}
|
||||
'' ''
|
||||
exec=${importGsettings}
|
||||
exec-once=${hyprpaper-pkg}/bin/hyprpaper
|
||||
exec-once=hyprctl setcursor ${config.lib.base16.theme.cursorTheme} ${toString config.lib.base16.theme.cursorSize}
|
||||
exec=hyprctl setcursor ${config.lib.base16.theme.cursorTheme} ${toString config.lib.base16.theme.cursorSize}
|
||||
exec-once=${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1
|
||||
exec-once=${pkgs.wl-clipboard}/bin/wl-paste --type text --watch ${pkgs.cliphist}/bin/cliphist store
|
||||
exec-once=${pkgs.wl-clipboard}/bin/wl-paste --type image --watch ${pkgs.cliphist}/bin/cliphist store
|
||||
|
41
profiles/workspace/kde.nix
Normal file
@ -0,0 +1,41 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
with config.lib.base16.theme; {
|
||||
services.dbus.packages =
|
||||
[ pkgs.systemd iconPackage ];
|
||||
services.udev.packages = [ pkgs.libmtp pkgs.media-player-info ];
|
||||
|
||||
qt.enable = true;
|
||||
|
||||
environment.sessionVariables = {
|
||||
KDEDIRS =
|
||||
"/run/current-system/sw:/run/current-system/sw/share/kservices5:/run/current-system/sw/share/kservicetypes5:/run/current-system/sw/share/kxmlgui5";
|
||||
};
|
||||
home-manager.users.${config.mainuser} = {
|
||||
qt.style.name = "kvantum";
|
||||
|
||||
xdg.configFile."kdeglobals".text = lib.generators.toGitINI {
|
||||
General = {
|
||||
# ColorScheme = "Generated";
|
||||
# Name = "Generated";
|
||||
fixed = "${fonts.mono.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
font = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
menuFont = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
shadeSortColumn = true;
|
||||
smallestReadableFont =
|
||||
"${fonts.main.family},${fontSizes.minimal.str},-1,5,57,0,0,0,0,0,Medium";
|
||||
toolBarFont = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
};
|
||||
KDE = {
|
||||
DoubleClickInterval = 400;
|
||||
ShowDeleteCommand = true;
|
||||
SingleClick = false;
|
||||
StartDragDist = 4;
|
||||
StartDragTime = 500;
|
||||
WheelScrollLines = 3;
|
||||
contrast = 4;
|
||||
# widgetStyle = "Breeze";
|
||||
};
|
||||
Icons = { Theme = "${fonts.icon.family}"; };
|
||||
};
|
||||
};
|
||||
}
|
@ -1,123 +0,0 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
with config.lib.base16.theme; {
|
||||
services.dbus.packages =
|
||||
[ pkgs.systemd iconPackage ];
|
||||
services.udev.packages = [ pkgs.libmtp pkgs.media-player-info ];
|
||||
|
||||
qt.enable = false;
|
||||
|
||||
environment.sessionVariables = {
|
||||
KDEDIRS =
|
||||
"/run/current-system/sw:/run/current-system/sw/share/kservices5:/run/current-system/sw/share/kservicetypes5:/run/current-system/sw/share/kxmlgui5";
|
||||
};
|
||||
home-manager.users.${config.mainuser} = {
|
||||
xdg.configFile."kdeglobals".text = lib.generators.toGitINI {
|
||||
"Colors:Button" = {
|
||||
BackgroundAlternate = base01-hex;
|
||||
BackgroundNormal = base01-hex;
|
||||
DecorationFocus = base02-hex;
|
||||
DecorationHover = base02-hex;
|
||||
ForegroundActive = base05-hex;
|
||||
ForegroundInactive = base01-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base09-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base03-hex;
|
||||
};
|
||||
"Colors:Complementary" = {
|
||||
BackgroundAlternate = base01-hex;
|
||||
BackgroundNormal = base03-hex;
|
||||
DecorationFocus = base02-hex;
|
||||
DecorationHover = base02-hex;
|
||||
ForegroundActive = base09-hex;
|
||||
ForegroundInactive = base01-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base0A-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base02-hex;
|
||||
};
|
||||
"Colors:Selection" = {
|
||||
BackgroundAlternate = base0D-hex;
|
||||
BackgroundNormal = base0D-hex;
|
||||
DecorationFocus = base0D-hex;
|
||||
DecorationHover = base0D-hex;
|
||||
ForegroundActive = base05-hex;
|
||||
ForegroundInactive = base05-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base09-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base02-hex;
|
||||
};
|
||||
"Colors:Tooltip" = {
|
||||
BackgroundAlternate = base01-hex;
|
||||
BackgroundNormal = base00-hex;
|
||||
DecorationFocus = base02-hex;
|
||||
DecorationHover = base02-hex;
|
||||
ForegroundActive = base02-hex;
|
||||
ForegroundInactive = base01-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base09-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base03-hex;
|
||||
};
|
||||
"Colors:View" = {
|
||||
BackgroundAlternate = base01-hex;
|
||||
BackgroundNormal = base00-hex;
|
||||
DecorationFocus = base02-hex;
|
||||
DecorationHover = base02-hex;
|
||||
ForegroundActive = base02-hex;
|
||||
ForegroundInactive = base01-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base09-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base03-hex;
|
||||
};
|
||||
"Colors:Window" = {
|
||||
BackgroundAlternate = base01-hex;
|
||||
BackgroundNormal = base00-hex;
|
||||
DecorationFocus = base02-hex;
|
||||
DecorationHover = base02-hex;
|
||||
ForegroundActive = base02-hex;
|
||||
ForegroundInactive = base01-hex;
|
||||
ForegroundLink = base0D-hex;
|
||||
ForegroundNegative = base08-hex;
|
||||
ForegroundNeutral = base09-hex;
|
||||
ForegroundNormal = base05-hex;
|
||||
ForegroundPositive = base0B-hex;
|
||||
ForegroundVisited = base03-hex;
|
||||
};
|
||||
General = {
|
||||
ColorScheme = "Generated";
|
||||
Name = "Generated";
|
||||
fixed = "${fonts.mono.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
font = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
menuFont = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
shadeSortColumn = true;
|
||||
smallestReadableFont =
|
||||
"${fonts.main.family},${fontSizes.minimal.str},-1,5,57,0,0,0,0,0,Medium";
|
||||
toolBarFont = "${fonts.main.family},${fontSizes.small.str},-1,5,50,0,0,0,0,0";
|
||||
};
|
||||
KDE = {
|
||||
DoubleClickInterval = 400;
|
||||
ShowDeleteCommand = true;
|
||||
SingleClick = false;
|
||||
StartDragDist = 4;
|
||||
StartDragTime = 500;
|
||||
WheelScrollLines = 3;
|
||||
contrast = 4;
|
||||
widgetStyle = "Breeze";
|
||||
};
|
||||
Icons = { Theme = "${fonts.icon.family}"; };
|
||||
};
|
||||
};
|
||||
}
|
@ -1,97 +1,227 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
thm = config.lib.base16.theme;
|
||||
in
|
||||
with config.deviceSpecific; {
|
||||
home-manager.users.${config.mainuser}.programs.waybar = {
|
||||
enable = true;
|
||||
style = builtins.readFile ./style.css;
|
||||
# style = builtins.readFile ./style.css;
|
||||
systemd.enable = true;
|
||||
systemd.target = "hyprland-session.target";
|
||||
settings = {
|
||||
mainBar = {
|
||||
layer = "top";
|
||||
position = "top";
|
||||
margin = "10 10 0 8";
|
||||
modules-left = [ "wlr/workspaces" ];
|
||||
modules-right = if isLaptop then [
|
||||
"cpu"
|
||||
"disk"
|
||||
"temperature"
|
||||
"custom/mem"
|
||||
"backlight"
|
||||
# margin = "8 8 0 8";
|
||||
modules-left = [
|
||||
"hyprland/workspaces"
|
||||
# "wireplumber"
|
||||
] ++ lib.optionals isLaptop [
|
||||
"battery"
|
||||
"clock"
|
||||
"tray"
|
||||
] else [
|
||||
"cpu"
|
||||
"disk"
|
||||
"temperature"
|
||||
"custom/mem"
|
||||
"clock"
|
||||
"tray"
|
||||
"backlight"
|
||||
];
|
||||
modules-center = [ "hyprland/window" ];
|
||||
modules-right = [
|
||||
"tray"
|
||||
"disk"
|
||||
"cpu"
|
||||
# "temperature"
|
||||
"memory"
|
||||
"clock"
|
||||
];
|
||||
backlight = {
|
||||
device = "intel_backlight";
|
||||
format = "{percent}% {icon}";
|
||||
format-icons = [ "" "" "" "" "" "" "" ];
|
||||
# min-length = 7;
|
||||
};
|
||||
battery = {
|
||||
interval = 60;
|
||||
states = {
|
||||
warning = 30;
|
||||
critical = 15;
|
||||
};
|
||||
format = "{icon} {capacity}%";
|
||||
format-charging = "<span color=\"#e0af68\"></span> {capacity}%";
|
||||
format-icons = [
|
||||
"<span color=\"#f7768e\"> </span>"
|
||||
"<span color=\"#f7768e\"> </span>"
|
||||
"<span color=\"#7aa2f7\"> </span>"
|
||||
"<span color=\"#7aa2f7\"> </span>"
|
||||
"<span color=\"#7aa2f7\"> </span>"
|
||||
];
|
||||
on-update = "$HOME/.config/waybar/scripts/check_battery.sh";
|
||||
};
|
||||
clock = {
|
||||
format = "{:%a, %d %b, %H:%M}";
|
||||
tooltip-format = "<tt>{calendar}</tt>";
|
||||
calendar = {
|
||||
mode = "month";
|
||||
mode-mon-col = 4;
|
||||
weeks-pos = "right";
|
||||
on-scroll = 1;
|
||||
on-click-right = "mode";
|
||||
format = {
|
||||
months = "<span color='#c0caf5'><b>{}</b></span>";
|
||||
days = "<span color='#c0caf5'><b>{}</b></span>";
|
||||
weeks = "<span color='#7dcfff'><b>W{}</b></span>";
|
||||
weekdays = "<span color='#ff9e64'><b>{}</b></span>";
|
||||
today = "<span color='#f7768e'><b><u>{}</u></b></span>";
|
||||
};
|
||||
};
|
||||
};
|
||||
cpu = {
|
||||
interval = 4;
|
||||
format = "{usage}%";
|
||||
format = "<span color=\"#7aa2f7\"> </span>{usage}%";
|
||||
};
|
||||
disk = {
|
||||
interval = 60;
|
||||
format = "{free}";
|
||||
format = "<span color=\"#7aa2f7\"> </span>{free}%";
|
||||
path = "/home";
|
||||
};
|
||||
"custom/separator" = {
|
||||
format = "|";
|
||||
interval = "once";
|
||||
tooltip = false;
|
||||
"hyprland/window" = {
|
||||
max-length = 64;
|
||||
};
|
||||
"wlr/workspaces" = {
|
||||
"hyprland/workspaces" = {
|
||||
format = "{icon}";
|
||||
on-click = "activate";
|
||||
disable-scroll = true;
|
||||
format-icons = {
|
||||
"10" = "0";
|
||||
"Messengers" = "Msg";
|
||||
"Music" = "Mus";
|
||||
};
|
||||
};
|
||||
memory = {
|
||||
format = "<span color=\"#7aa2f7\"> </span>{used}GiB";
|
||||
interval = 4;
|
||||
};
|
||||
temperature = {
|
||||
# "hwmon-path" = "/sys/class/hwmon/hwmon0/temp1_input";
|
||||
critical-threshold = 80;
|
||||
format = "{temperatureC}°C {icon}";
|
||||
format-icons = [ "" "" "" "" "" ];
|
||||
tooltip = false;
|
||||
};
|
||||
"custom/mem" = {
|
||||
format = "{} ";
|
||||
interval = 3;
|
||||
exec = "${pkgs.procps}/bin/free -h | ${pkgs.gawk}/bin/awk '/Mem:/{printf $7}'";
|
||||
tooltip = false;
|
||||
};
|
||||
backlight = {
|
||||
device = "intel_backlight";
|
||||
format = "{percent}% {icon}";
|
||||
format-icons = [ "" "" "" "" "" "" "" ];
|
||||
min-length = 7;
|
||||
};
|
||||
battery = {
|
||||
states = {
|
||||
warning = 30;
|
||||
critical = 15;
|
||||
};
|
||||
format = "{capacity}% {icon}";
|
||||
format-charging = "{capacity}% ";
|
||||
format-plugged = "{capacity}% ";
|
||||
format-alt = "{time} {icon}";
|
||||
format-icons = [
|
||||
"" "" "" "" "" "" "" "" "" ""
|
||||
];
|
||||
on-update = "$HOME/.config/waybar/scripts/check_battery.sh";
|
||||
};
|
||||
clock = {
|
||||
format = "{:%a, %d %b, %H:%M}";
|
||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||
format = "<span color=\"#7aa2f7\">\uf4f5 </span>{temperatureC}°C";
|
||||
format-critical = "<span color=\"#f7768e\"> </span>{temperatureC}°C";
|
||||
interval = 4;
|
||||
};
|
||||
tray = {
|
||||
icon-size = 16;
|
||||
spacing = 0;
|
||||
icon-size = 12;
|
||||
spacing = 6;
|
||||
};
|
||||
wireplumber = {
|
||||
scroll-step = 5;
|
||||
format = "<span color=\"#7aa2f7\">{icon} </span>{volume}%";
|
||||
format-muted = "<span color=\"#f7768e\">\ueee8 </span>Muted";
|
||||
format-bluetooth = "<span color=\"#7aa2f7\">\uf282 </span>{volume}%";
|
||||
on-click-right = "blueman-manager";
|
||||
format-icons = [ "\uf026 " "\uf027 " "\uf028 " ];
|
||||
on-click = "pavucontrol";
|
||||
};
|
||||
};
|
||||
};
|
||||
style = let
|
||||
accent = "lavender";
|
||||
in ''
|
||||
@import "catppuccin.css";
|
||||
|
||||
* {
|
||||
font-family:
|
||||
"${thm.fonts.mono.family}",
|
||||
feather;
|
||||
font-weight: 500;
|
||||
font-size: 11pt;
|
||||
color: @text;
|
||||
}
|
||||
|
||||
/* main waybar */
|
||||
window#waybar {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
/* background: rgba(26, 27, 38, 0.7); */
|
||||
background: @base;
|
||||
}
|
||||
|
||||
/* when hovering over modules */
|
||||
tooltip {
|
||||
background: @base;
|
||||
border-radius: 5%;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
/* Sets active workspace to have a solid line on the bottom */
|
||||
#workspaces button.active {
|
||||
border-bottom: 2px solid @${accent};
|
||||
border-radius: 0;
|
||||
margin-top: 2px;
|
||||
transition: all 0.5s ease-in-out;
|
||||
}
|
||||
|
||||
/* More workspace stuff for highlighting on hover */
|
||||
#workspaces button.focused {
|
||||
color: @subtext0;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: #f7768e;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: @crust;
|
||||
color: @text;
|
||||
}
|
||||
|
||||
/* Sets background, padding, margins, and borders for (all) modules */
|
||||
#workspaces,
|
||||
#clock,
|
||||
#window,
|
||||
#temperature,
|
||||
#disk,
|
||||
#cpu,
|
||||
#memory,
|
||||
#network,
|
||||
#wireplumber,
|
||||
#tray,
|
||||
#backlight,
|
||||
#battery {
|
||||
/* background: rgba(26, 27, 38, 0); */
|
||||
background: @base;
|
||||
padding: 0 10px;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
/* Hide window module when not focused on window or empty workspace */
|
||||
window#waybar.empty #window {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
/* Set up rounding to make these modules look like separate pills */
|
||||
#tray {
|
||||
color: @${accent};
|
||||
border-radius: 12px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
#window {
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
/* close right side of bar */
|
||||
#temperature {
|
||||
border-radius: 12px 0 0 12px;
|
||||
}
|
||||
|
||||
/* close left side of bar */
|
||||
#battery {
|
||||
border-radius: 0 12px 12px 0;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,219 +0,0 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family: IBM Plex Mono;
|
||||
font-size: 14px;
|
||||
min-height: 14px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
margin-right: 8px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
transition: none;
|
||||
color: #7c818c;
|
||||
background: transparent;
|
||||
padding: 5px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#workspaces button.persistent {
|
||||
color: #7c818c;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
transition: none;
|
||||
box-shadow: inherit;
|
||||
text-shadow: inherit;
|
||||
border-radius: inherit;
|
||||
color: #383c4a;
|
||||
background: #7c818c;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#language {
|
||||
padding-left: 16px;
|
||||
padding-right: 8px;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
margin-right: 8px;
|
||||
padding-right: 16px;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#custom-mail { /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
|
||||
margin-right: 8px;
|
||||
padding-right: 16px;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#mode {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#clock {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#custom-weather {
|
||||
padding-right: 16px;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none; /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #90b1b1;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#custom-mem {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#disk {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#battery {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: #ffffff;
|
||||
background-color: #26A65B;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
background-color: #ffbe61;
|
||||
color: black;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #f53c3c;
|
||||
color: #ffffff;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#tray {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
margin-right: 8px;
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #ffffff;
|
||||
background: #383c4a;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
96
profiles/workspace/wlogout/default.nix
Normal file
@ -0,0 +1,96 @@
|
||||
{ config, lib, ... }: {
|
||||
home-manager.users.${config.mainuser} = let
|
||||
inherit (config.home-manager.users.${config.mainuser}.catppuccin) sources flavor accent;
|
||||
|
||||
thm = config.lib.base16.theme;
|
||||
palette = (lib.importJSON "${sources.palette}/palette.json").${flavor}.colors;
|
||||
in {
|
||||
programs.wlogout = {
|
||||
enable = true;
|
||||
layout = [{
|
||||
label = "lock";
|
||||
action = "";
|
||||
text = "Lock";
|
||||
} {
|
||||
label = "reboot";
|
||||
action = "systemctl reboot";
|
||||
text = "Reboot";
|
||||
} {
|
||||
label = "shutdown";
|
||||
action = "systemctl poweroff";
|
||||
text = "Shutdown";
|
||||
} {
|
||||
label = "logout";
|
||||
action = "hyprctl dispatch exit 0";
|
||||
text = "Logout";
|
||||
} {
|
||||
label = "suspend";
|
||||
action = "systemctl suspend";
|
||||
text = "Suspend";
|
||||
}];
|
||||
style = ''
|
||||
window {
|
||||
font-family: "${thm.fonts.mono.family}";
|
||||
font-size: 18pt;
|
||||
color: ${palette.text.hex};
|
||||
background-color: rgba(${toString palette.base.rgb.r}, ${toString palette.base.rgb.g}, ${toString palette.base.rgb.b}, 0.8);
|
||||
}
|
||||
button {
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: 25%;
|
||||
border: none;
|
||||
background-color: rgba(${toString palette.base.rgb.r}, ${toString palette.base.rgb.g}, ${toString palette.base.rgb.b}, 0);
|
||||
color: ${palette.${accent}.hex};
|
||||
}
|
||||
button:hover {
|
||||
background-color: rgba(${toString palette.surface0.rgb.r}, ${toString palette.surface0.rgb.g}, ${toString palette.surface0.rgb.b}, 0.1);
|
||||
}
|
||||
button:focus {
|
||||
background-color: ${palette.${accent}.hex};
|
||||
color: ${palette.base.hex};
|
||||
}
|
||||
#lock {
|
||||
background-image: image(url("${./lock.png}"));
|
||||
padding: 35px;
|
||||
}
|
||||
#lock:focus {
|
||||
background-image: image(url("${./lock-hover.png}"));
|
||||
padding: 35px;
|
||||
}
|
||||
#logout {
|
||||
background-image: image(url("${./logout.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#logout:focus {
|
||||
background-image: image(url("${./logout-hover.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#suspend {
|
||||
background-image: image(url("${./sleep.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#suspend:focus {
|
||||
background-image: image(url("${./sleep-hover.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#shutdown {
|
||||
background-image: image(url("${./power.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#shutdown:focus {
|
||||
background-image: image(url("${./power-hover.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#reboot {
|
||||
background-image: image(url("${./restart.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
#reboot:focus {
|
||||
background-image: image(url("${./restart-hover.png}"));
|
||||
padding: 30px;
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
BIN
profiles/workspace/wlogout/lock-hover.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
profiles/workspace/wlogout/lock.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
profiles/workspace/wlogout/logout-hover.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
profiles/workspace/wlogout/logout.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
profiles/workspace/wlogout/power-hover.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
profiles/workspace/wlogout/power.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
profiles/workspace/wlogout/restart-hover.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
profiles/workspace/wlogout/restart.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
profiles/workspace/wlogout/sleep-hover.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
profiles/workspace/wlogout/sleep.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
@ -59,6 +59,7 @@
|
||||
|
||||
envExtra = ''
|
||||
SHELL="${pkgs.zsh}/bin/zsh";
|
||||
ZSHZ_DATA="$HOME/.local/share/zsh/z";
|
||||
'';
|
||||
|
||||
shellAliases = {
|
||||
|
@ -14,6 +14,7 @@
|
||||
email
|
||||
firefox
|
||||
gamemode
|
||||
home-apps
|
||||
kitty
|
||||
mangohud
|
||||
mpv
|
||||
@ -23,7 +24,6 @@
|
||||
steam
|
||||
vscode
|
||||
waydroid
|
||||
zathura
|
||||
|
||||
# aria2
|
||||
cursor
|
||||
@ -40,9 +40,11 @@
|
||||
proxy
|
||||
hyprland
|
||||
waybar
|
||||
wlogout
|
||||
xdg
|
||||
vpn
|
||||
|
||||
vscode-server
|
||||
catppuccin
|
||||
];
|
||||
}
|
||||
|
16
scripts/persist.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p rsync ripgrep
|
||||
rsync -amvxx \
|
||||
--dry-run \
|
||||
--no-links \
|
||||
--exclude '/tmp/*' \
|
||||
--exclude '/root/*' \
|
||||
/ /persist \
|
||||
| rg -v '^skipping|/$'
|
||||
|
||||
rsync -amvxx \
|
||||
--dry-run \
|
||||
--no-links \
|
||||
--exclude 'ataraxia/.vscode/*' \
|
||||
/home/ataraxia /persist/home/ataraxia \
|
||||
| rg -v '^skipping|/$'
|
@ -1,8 +1,10 @@
|
||||
rustic-backups-s3-env: ENC[AES256_GCM,data:XTUTtAmjBiy5mdlwT53Z9IDycs0s069182Emd0M6TSpPScqce3kxoN+hH8vgaOLU0b1jF3d9pkO0PpwfnUr2IkMpTd7ZKHeqHbYzS4gpKFnkQMhDexHLFBrQIfBrTbCGzspl83q5ksU9ENuY+sdkKXBhn99ja2mAFdfOVyNRttVNwKuv5/e8Bh0ySyTkogOgLyttLWo+pqKuvBP96BvSLOiGqfYBMgZU6uncg4YbdmOWPnvnTRPWHwIAyyXOSv56Sw36XfBkCBhZk2fmDRVJyRkuFthkhb6b2LkxhWFofilJupGTaQUHuZ3Efq9+eS5n1zOnudL7Gp7MmaQ4Hz3tQnzML16pJW1UcyT11uvWl8Zz5h+VlwJAfM7VNVaOs2FjEEy5imcUWurhIgRcrKHYc3mKNk5XYuvCI93aX9/LKEyeGQ==,iv:sPwKIYu/RyZQHYmz7aSYFhmx2ZqlH+RHRbdkOHGCa1s=,tag:eD5vRFkwEw4i97UQyRk6Hw==,type:str]
|
||||
rustic-postgresql-s3-env: ENC[AES256_GCM,data:m0G4G+i3fJo34rUGnQ0HOsA1GlOpLnJXDJltXFM5URUFaK1Jh5pGnOsYAiU2410enKafdf5eneW31j9r2GWmEFOoX89+yLmQxe22YnfLcFfaBdskVeaz/6HY2FK5euwdy70ZPNb05uYaS1QXPABJCS8p2APjx9bcz4MPSGgN6Ed/h7NdEU1FXgEfQZj9cysoVN9Qf3zYP4oqTBFVq11bV1yj0dsBMxHmY92aAdwUJWqjk4w2vi90zYxWNYk5PzNCh7qURtfmfNTHfEy55umbDayWjxZAsNgGOtxUsArUNSIU12GeBx7VCxepbNbDiej9fNnNqYvYnRspscag5w0oHSPa8a/qPY+R/imKqLU15xCG2EfnBm310zPyI9o/lgiU9Ua8z4cfuU5FcKr7ICIr5OdupiWy6aC1KYhkBZVViXEz3A==,iv:Hu9Bbynj5D9k2Rj0NWYZuuHQzcrauGyMmPex+T+VKIg=,tag:IAXAGK//SW890ZBKkUr8gw==,type:str]
|
||||
rustic-minecraft-s3-env: ENC[AES256_GCM,data:04sIa/w5exYkgUrAiaBuPJ8JaP8pNmAgbbToO54v1jHPCBmcuSLw1ncUi/jqUtJBTvj+8WRYUxe0a0ssPid28N8229yv1IbhDxvoosJj43SEnmbRtgegHLnrtLdd1y6cL6tDj/e2qFgC1LQvnPmkKe9YThyGAc4=,iv:WE1XNQTZGKhw7yN4THL4/gA1CD9oSmJ0TtCtxOcOQbE=,tag:7rHN2i7GGawhHY9ZcjuqIg==,type:str]
|
||||
rustic-nas-pass: ENC[AES256_GCM,data:uDiQQRxlpBfbwihXDR32aGjP41iZ,iv:qx6FJEllahkP9BPYFFfv9LHnnVTOl6B7Jv9OSfNkPok=,tag:MBUT77ccG/acr/U/X2zrCA==,type:str]
|
||||
rustic-vps-pass: ENC[AES256_GCM,data:LMdVK6j/TV9JLAxwWUtIfF//nf6r,iv:PjOYcNeLjlRx6uoZo+jr0oA9N60NJNNPloc9fc44raw=,tag:AjOzsfVIhDCb5a5D3yIdUA==,type:str]
|
||||
rustic-postgresql-pass: ENC[AES256_GCM,data:oUHakvIPSwkNy1lkQ4k14+CWIofO,iv:v3EFeZCkFyeY/ADK8vqYvAD0XDmnQFIq6XGd9B8jvXY=,tag:6+kGWMq+9iVLSf5p/TIp8g==,type:str]
|
||||
rustic-workstation-pass: ENC[AES256_GCM,data:dVuq75mlHStFO+k97yV0kUUqFtjF,iv:p2ApGtzHO9XUQJnnSyIMs1Cr6ODIt6RnBf2SXNrRbTk=,tag:b8WRap8QUtQrsYXVYdeRUw==,type:str]
|
||||
rustic-minio-secret-key: ENC[AES256_GCM,data:Jkn0mHcLFWS/euPCYtEF3hXN4Jx8PHZHA3RtZiMshuZdZTv0Y+tHteZB2i27Ka+u,iv:R2FEEhe+EoqFDQYbLJ3hrb+ENVvsP2c++WA0z3QQrxA=,tag:bifjyNyNouUhFGV6SpAg7Q==,type:str]
|
||||
rclone-s3-sync: ENC[AES256_GCM,data:oBDntYhuThzmImRgpBSsgqDwXs4+wJxAOZKH3vlKfH+9CXYNI1ks92t8Ywr/wltikvXiVbKuztY7Iuqe4Mkl0K9onYYcmrMDqyuLXRV/WPXNaAwyOyFUS17dxcqoyG51T0zzb1l4LH+GTrLw7m7RD7y7XFU/uidAUuBnQHAQpu8xRI/5PLcSaae+KfmoJGpZBX4BawXMHzRKKo462Muw/1FbBQpC0ERvTd34oSke32+Ni3MNdg/nOVyczYIQ+TPNhtgiSNXFJFPaXWMrIh29jhyJv7M2k4nYzNzb3A2miGCxWRDNy7bxZTDeVLgJUZT3KJNyb8BGLhu2v54WSbm01I1pP+//xYSZI0JER4fCZpdGodr2TV6u7YOyVxa1pZ7C7O9T/dd2O9NbgQY1Azc9MhiIXZnT58j72SNvhDNtCloM50R0LYmagCj2alP3Z4W7L+BdtaU58hWFCM2P8EIYbPkz8wK4/i1XARvZU9i+cRWZCoKi+yi0cV2yKOYlFEW0RmO9G3rC6a31YITwfpHhQw9IFuZXwdwZdf4OIuw12BIXfeUQJWqIl4QRSnOSzCggSZngwhoq/r46Oh2Jn9xXuVO6Hlod8pGyxKovO9bGQl3ioIU/KAhKp88k/BDS7YM4HhAEPNjvsSZgRGf21G7Z4ypi6a2grMTGgIKbOA3KEe2CKrSEVq7JRF5m1uAPJ2zrgbBrSwI0qkhGfn+SERMVtyzkIvTQkEQJ/g==,iv:jWhHLIccl1Pgr55xEMd2ED8FS3pvRjnuugMJ0sHnuW4=,tag:upgyBz2AA2zhidFIkcVrpw==,type:str]
|
||||
sops:
|
||||
@ -11,8 +13,8 @@ sops:
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age: []
|
||||
lastmodified: "2024-02-13T18:54:38Z"
|
||||
mac: ENC[AES256_GCM,data:dfaHOR6j9haR9MofGrfeHpIK9+wXbEYG9O2R8258ifncOPrAFHggHUxdgeX5L7wSQ2IUuTw11FzbFiNSAT0sH9nIXwPLtO1N4MJAzC/XE1e5b2ZIBVTmJAAL3wH0dKpLExA1kMGRrLmTcIGUiGTDwgn86wxlUf92bAA/oycb5cQ=,iv:mwtkiGzOJTobMPLxsGtEIzDjmAR+4Forvg5KFFnmpCk=,tag:fR+8skvaHBKnwZ0tXigodw==,type:str]
|
||||
lastmodified: "2024-06-08T15:01:54Z"
|
||||
mac: ENC[AES256_GCM,data:euc66CxC9LHiJYKiMaEWunIZCHd2ZGl1YcFIJWmv2/x1pMRSnQ85yCL5Fpu8crjaayDYGJJVmMBVeU8trmaoqzYE1pWtUSIQo2QligJ1k8T5erdakSwv6keHrxczS1gEkS1Ygl6xieZUY5mcwY1Wyz7ZMeAeiIpIaraSf8Uydu8=,iv:OMGVEmOHnJbFzVpfCtvt3jrw6vP5dCib/HfcKpbSZ7k=,tag:wTtzNCE6BB3S7x2wWNYq1A==,type:str]
|
||||
pgp:
|
||||
- created_at: "2024-02-06T20:12:53Z"
|
||||
enc: |-
|
||||
|