Merge branch 'flake-parts' into 'master'
Module-based ricing See merge request bertof/nix-dotfiles!1
This commit is contained in:
commit
4d65b238a4
52 changed files with 848 additions and 1277 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1,4 +1,5 @@
|
|||
result
|
||||
result-*
|
||||
.direnv
|
||||
.pre-commit-config.yaml
|
||||
.worktrees/
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
{ writeShellScriptBin
|
||||
, lib
|
||||
, xclip
|
||||
, coreutils
|
||||
, terminal-command ? "kitty -e"
|
||||
,
|
||||
}:
|
||||
# 64 │ function clipcopy() { xclip -in -selection clipboard < "${1:-/dev/stdin}"; }
|
||||
# 65 │ function clippaste() { xclip -out -selection clipboard; } clip
|
||||
writeShellScriptBin "clipedit" ''
|
||||
PATH=$PATH:"${
|
||||
lib.makeBinPath [
|
||||
coreutils
|
||||
xclip
|
||||
]
|
||||
}"
|
||||
tmp_file=$(mktemp)
|
||||
xclip -out -selection -clipboard > $tmp_file
|
||||
${terminal-command} $VISUAL $tmp_file || ${terminal-command} $EDITOR $tmp_file
|
||||
xclip -in -selection clipboard < $tmp_file
|
||||
rm $tmp_file
|
||||
''
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
{ stdenv, autoPatchelfHook, ... }:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cocktail-bar-cli";
|
||||
version = "1.0";
|
||||
src = /home/bertof/Documenti/Security/NPI/cli/cocktail-bar-cli;
|
||||
dontUnpack = true;
|
||||
nativeBuildInputs = [ autoPatchelfHook ];
|
||||
installPhase = "install -m755 -D ${src} $out/bin/cocktail-bar-cli";
|
||||
}
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
{ lib
|
||||
, rice
|
||||
, roboto
|
||||
, i3lock-color
|
||||
, writeScriptBin
|
||||
, font ? {
|
||||
package = roboto;
|
||||
name = "Roboto";
|
||||
}
|
||||
, palette ? rice.palette.palette { }
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
strPalette = lib.nix-rice.palette.toRGBAHex palette;
|
||||
in
|
||||
writeScriptBin "lockscreen" ''
|
||||
# Using font package ${font.package}
|
||||
${i3lock-color}/bin/i3lock-color \
|
||||
--insidever-color="${strPalette.normal.green}" \
|
||||
--insidewrong-color="${strPalette.normal.red}" \
|
||||
--inside-color="${strPalette.normal.black}" \
|
||||
--ringver-color="${strPalette.bright.green}" \
|
||||
--ringwrong-color="${strPalette.bright.red}" \
|
||||
--ringver-color="${strPalette.bright.green}" \
|
||||
--ringwrong-color="${strPalette.bright.red}" \
|
||||
--ring-color="${strPalette.bright.blue}" \
|
||||
--line-uses-ring \
|
||||
--keyhl-color="${strPalette.bright.red}" \
|
||||
--bshl-color="${strPalette.bright.red}" \
|
||||
--separator-color="${strPalette.normal.black}" \
|
||||
--verif-color="${strPalette.normal.green}" \
|
||||
--wrong-color="${strPalette.normal.red}" \
|
||||
--layout-color="${strPalette.normal.blue}" \
|
||||
--date-color="${strPalette.normal.blue}" \
|
||||
--time-color="${strPalette.normal.blue}" \
|
||||
--blur 10 \
|
||||
--clock \
|
||||
--indicator \
|
||||
--time-str="%H:%M:%S" \
|
||||
--date-str="%a %e %b %Y" \
|
||||
--verif-text="Verifying..." \
|
||||
--wrong-text="Auth Failed" \
|
||||
--noinput="No Input" \
|
||||
--lock-text="Locking..." \
|
||||
--lockfailed="Lock Failed" \
|
||||
--time-font="${font.name}" \
|
||||
--date-font="${font.name}" \
|
||||
--layout-font="${font.name}" \
|
||||
--verif-font="${font.name}" \
|
||||
--wrong-font="${font.name}" \
|
||||
--radius=120 \
|
||||
--ring-width=20 \
|
||||
--pass-media-keys \
|
||||
--pass-screen-keys \
|
||||
--pass-volume-keys \
|
||||
--nofork
|
||||
''
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
{ feh
|
||||
, glib
|
||||
, findutils
|
||||
, gnugrep
|
||||
, coreutils
|
||||
, writeScriptBin
|
||||
, backgrounds_directory ? "$HOME/Immagini/Sfondi"
|
||||
,
|
||||
}:
|
||||
let
|
||||
find = "${findutils}/bin/find";
|
||||
grep = "${gnugrep}/bin/grep";
|
||||
shuf = "${coreutils}/bin/shuf";
|
||||
in
|
||||
writeScriptBin "update-background" ''
|
||||
#!/bin/sh
|
||||
if [ $# -eq 0 ]; then
|
||||
image=`${find} ${backgrounds_directory} -type f | ${grep} -v "/\." | ${shuf} -n 1`
|
||||
else
|
||||
image="$1"
|
||||
fi
|
||||
echo "image: $image"
|
||||
${feh}/bin/feh --bg-fill --no-fehbg "$image"
|
||||
${glib}/bin/gsettings set org.gnome.desktop.background picture-uri "file://$image"
|
||||
true
|
||||
''
|
||||
288
flake.lock
generated
288
flake.lock
generated
|
|
@ -100,11 +100,11 @@
|
|||
"flake-compat_3": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -114,22 +114,6 @@
|
|||
}
|
||||
},
|
||||
"flake-compat_4": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
|
|
@ -145,56 +129,97 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726560853,
|
||||
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||
"lastModified": 1727826117,
|
||||
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
|
||||
"lastModified": 1727826117,
|
||||
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729104314,
|
||||
"narHash": "sha256-pZRZsq5oCdJt3upZIU4aslS9XwFJ+/nVtALHIciX/BI=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "3c3e88f0f544d6bb54329832616af7eb971b6be6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks-nix_2": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729104314,
|
||||
"narHash": "sha256-pZRZsq5oCdJt3upZIU4aslS9XwFJ+/nVtALHIciX/BI=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "3c3e88f0f544d6bb54329832616af7eb971b6be6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nix-rice",
|
||||
"pre-commit-hooks",
|
||||
"git-hooks-nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1660459072,
|
||||
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -206,7 +231,8 @@
|
|||
"gitignore_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"pre-commit-hooks",
|
||||
"nix-rice",
|
||||
"git-hooks-nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
|
|
@ -252,11 +278,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729414726,
|
||||
"narHash": "sha256-Dtmm1OU8Ymiy9hVWn/a2B8DhRYo9Eoyx9veERdOBR4o=",
|
||||
"lastModified": 1729459288,
|
||||
"narHash": "sha256-gBOVJv+q6Mx8jGvwX7cE6J8+sZmi1uxpRVsO7WxvVuQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "fe56302339bb28e3471632379d733547caec8103",
|
||||
"rev": "1e27f213d77fc842603628bcf2df6681d7d08f7e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -304,33 +330,35 @@
|
|||
},
|
||||
"nix-rice": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"git-hooks-nix": "git-hooks-nix_2",
|
||||
"kitty-themes-src": "kitty-themes-src",
|
||||
"nixpkgs-lib": "nixpkgs-lib",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-lib": "nixpkgs-lib_3",
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1682952592,
|
||||
"narHash": "sha256-1qXvqCxnWpk0ELdpmS2OMDu047gvl166CGBm+sfi8oo=",
|
||||
"lastModified": 1729607158,
|
||||
"narHash": "sha256-H0cr8kohjo+fJIKIpcLZwtmRUGH01Gyld0ulhfqe/Rw=",
|
||||
"owner": "bertof",
|
||||
"repo": "nix-rice",
|
||||
"rev": "dddd03ed3c5e05c728b0df985f7af905b002f588",
|
||||
"rev": "2a4b7d31de444ab5d1f8623f41f0382c9e3eac33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "bertof",
|
||||
"ref": "modules",
|
||||
"repo": "nix-rice",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixlib": {
|
||||
"locked": {
|
||||
"lastModified": 1728781282,
|
||||
"lastModified": 1729386149,
|
||||
"narHash": "sha256-hUP9oxmnOmNnKcDOf5Y55HQ+NnoT0+bLWHLQWLLw9Ks=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "16340f605f4e8e5cf07fd74dcbe692eee2d4f51b",
|
||||
"rev": "cce4521b6df014e79a7b7afc58c703ed683c916e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -347,11 +375,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729127034,
|
||||
"narHash": "sha256-42AMGl+dh4I2wGgICSeDI1mqYaDEJhwqquHJ1vA0QiQ=",
|
||||
"lastModified": 1729472750,
|
||||
"narHash": "sha256-s93LPHi5BN7I2xSGNAFWiYb8WRsPvT1LE9ZjZBrpFlg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "dd28a0806e7124fe392c33c9ccaa12f21970401f",
|
||||
"rev": "7c60ba4bc8d6aa2ba3e5b0f6ceb9fc07bc261565",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -362,11 +390,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1729417461,
|
||||
"narHash": "sha256-p0j/sUs7noqZw0W+SEuZXskzOfgOH7yY80ksIM0fCi4=",
|
||||
"lastModified": 1729509737,
|
||||
"narHash": "sha256-8OHgqz+tFo21h3hg4/GHizFPws+MMzpEru/+62Z0E8c=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "8f38d8a4754cf673c2609c4ed399630db87e678b",
|
||||
"rev": "cc2d3c0e060f981905d52337340ee6ec8b8eb037",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -377,27 +405,51 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1681303793,
|
||||
"narHash": "sha256-JEdQHsYuCfRL2PICHlOiH/2ue3DwoxUX7DJ6zZxZXFk=",
|
||||
"lastModified": 1719082008,
|
||||
"narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fe2ecaf706a5907b5e54d979fbde4924d84b65fc",
|
||||
"rev": "9693852a2070b398ee123a329e68f0dab5526681",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1681001314,
|
||||
"narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=",
|
||||
"lastModified": 1727825735,
|
||||
"narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib_2": {
|
||||
"locked": {
|
||||
"lastModified": 1727825735,
|
||||
"narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib_3": {
|
||||
"locked": {
|
||||
"lastModified": 1729386149,
|
||||
"narHash": "sha256-hUP9oxmnOmNnKcDOf5Y55HQ+NnoT0+bLWHLQWLLw9Ks=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4",
|
||||
"rev": "cce4521b6df014e79a7b7afc58c703ed683c916e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -408,16 +460,16 @@
|
|||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1678872516,
|
||||
"narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=",
|
||||
"lastModified": 1720386169,
|
||||
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9b8e5abb18324c7fe9f07cb100c3cd4a29cda8b8",
|
||||
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-22.11",
|
||||
"ref": "nixos-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
|
@ -456,11 +508,42 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1729357638,
|
||||
"narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=",
|
||||
"lastModified": 1719082008,
|
||||
"narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "bb8c2cf7ea0dd2e18a52746b2c3a5b0c73b93c22",
|
||||
"rev": "9693852a2070b398ee123a329e68f0dab5526681",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1729507178,
|
||||
"narHash": "sha256-3UZqmGSK+uMUGkydhnqng/iaT857JtAxH9DtucTbUQs=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e156ec8b02301cd455ab96bbd53ebd7bf7d1e29d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1729519254,
|
||||
"narHash": "sha256-tcPVpLwrcqFM4ovqXtHgwgMT+nm4qBa/6pwkckks35A=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7c51187abf20b81c883605ab8e8c7acdc24fadb2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -470,68 +553,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": [
|
||||
"nix-rice",
|
||||
"flake-utils"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1682596858,
|
||||
"narHash": "sha256-Hf9XVpqaGqe/4oDGr30W8HlsWvJXtMsEPHDqHZA6dDg=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "fb58866e20af98779017134319b5663b8215d912",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks_2": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729104314,
|
||||
"narHash": "sha256-pZRZsq5oCdJt3upZIU4aslS9XwFJ+/nVtALHIciX/BI=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "3c3e88f0f544d6bb54329832616af7eb971b6be6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
"deploy-rs": "deploy-rs",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-utils": "flake-utils",
|
||||
"flake-parts": "flake-parts",
|
||||
"git-hooks-nix": "git-hooks-nix",
|
||||
"home-manager": "home-manager_2",
|
||||
"home-manager-u": "home-manager-u",
|
||||
"nix-rice": "nix-rice",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs-u": "nixpkgs-u",
|
||||
"pre-commit-hooks": "pre-commit-hooks_2"
|
||||
"systems": "systems_4"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
|
|
|
|||
659
flake.nix
659
flake.nix
|
|
@ -25,8 +25,7 @@
|
|||
nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
nix-rice.url = "github:bertof/nix-rice";
|
||||
nix-rice.url = "github:bertof/nix-rice/modules";
|
||||
nixos-generators = {
|
||||
url = "github:nix-community/nixos-generators";
|
||||
inputs = {
|
||||
|
|
@ -34,31 +33,18 @@
|
|||
};
|
||||
};
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||
pre-commit-hooks = {
|
||||
url = "github:cachix/pre-commit-hooks.nix";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
systems.url = "github:nix-systems/default";
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
git-hooks-nix.url = "github:cachix/git-hooks.nix";
|
||||
# agenix-shell.url = "github:aciceri/agenix-shell"; # TODO
|
||||
# agenix-rekey.url = "github:oddlama/agenix-rekey"; # TODO
|
||||
# emanote.url = "github:srid/emanote";
|
||||
};
|
||||
|
||||
outputs =
|
||||
{ self
|
||||
, nixpkgs
|
||||
, nixpkgs-u
|
||||
, home-manager
|
||||
, home-manager-u
|
||||
, agenix
|
||||
, deploy-rs
|
||||
, flake-utils
|
||||
, nixos-generators
|
||||
, nixos-hardware
|
||||
, nix-rice
|
||||
, pre-commit-hooks
|
||||
, ...
|
||||
}:
|
||||
outputs = inputs:
|
||||
let
|
||||
config = {
|
||||
nix-config = {
|
||||
allowUnfree = true;
|
||||
extraOptions = "experimental-features = nix-command flakes";
|
||||
permittedInsecurePackages = [
|
||||
|
|
@ -66,126 +52,28 @@
|
|||
];
|
||||
};
|
||||
|
||||
overlays = [
|
||||
# Combine stable and unstable packages
|
||||
(self: _: {
|
||||
stable_pkgs = import nixpkgs {
|
||||
inherit config overlays;
|
||||
inherit (self) system;
|
||||
};
|
||||
unstable_pkgs = import nixpkgs-u {
|
||||
inherit config overlays;
|
||||
inherit (self) system;
|
||||
};
|
||||
})
|
||||
|
||||
# Nix rice
|
||||
nix-rice.overlays.default
|
||||
(import ./rice.nix)
|
||||
|
||||
# Flakes packages
|
||||
(self: super: {
|
||||
clipedit = self.callPackage ./custom/clipedit { };
|
||||
wl-clipedit = self.callPackage ./custom/wl-clipedit { };
|
||||
update-background = self.callPackage ./custom/update-background {
|
||||
backgrounds_directory = "$HOME/Immagini/Sfondi/1080+/1440+";
|
||||
};
|
||||
lockscreen = self.callPackage ./custom/lockscreen {
|
||||
palette = self.rice.colorPalette;
|
||||
font = self.rice.font.normal;
|
||||
};
|
||||
way-lockscreen = self.callPackage ./custom/way-lockscreen {
|
||||
palette = self.rice.colorPalette;
|
||||
font = self.rice.font.normal;
|
||||
};
|
||||
sddm-theme-clairvoyance = self.callPackage ./custom/sddm-theme-clairvoyance {
|
||||
wallpaper = ./wallpapers/background.jpg;
|
||||
};
|
||||
keyboard-switch = self.callPackage ./custom/keyboard-switch { };
|
||||
sddm-sugar-dark = self.callPackage ./custom/sddm-sugar-dark { };
|
||||
google-chrome = super.google-chrome.override {
|
||||
commandLineArgs = [
|
||||
"--password-store=gnome"
|
||||
"--force-dark-mode"
|
||||
];
|
||||
};
|
||||
logseq = super.logseq.override { electron = super.electron_27; };
|
||||
})
|
||||
];
|
||||
|
||||
basic =
|
||||
with flake-utils.lib;
|
||||
eachDefaultSystem (
|
||||
system:
|
||||
let
|
||||
pkgs = import nixpkgs { inherit system config overlays; };
|
||||
in
|
||||
{
|
||||
checks = {
|
||||
pre-commit-check = pre-commit-hooks.lib.${system}.run {
|
||||
src = ./.;
|
||||
hooks = {
|
||||
deadnix.enable = true;
|
||||
nixpkgs-fmt.enable = true;
|
||||
statix.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = [
|
||||
# deploy-rs.packages.${system}.deploy-rs
|
||||
pkgs.deploy-rs
|
||||
];
|
||||
shellHook = ''
|
||||
${self.checks.${system}.pre-commit-check.shellHook}
|
||||
'';
|
||||
LOCAL_KEY = "/etc/nix/key";
|
||||
};
|
||||
|
||||
formatter = pkgs.nixpkgs-fmt;
|
||||
}
|
||||
);
|
||||
|
||||
nix_configuration = {
|
||||
basic_module = {
|
||||
nixpkgs = {
|
||||
inherit overlays config;
|
||||
config = nix-config;
|
||||
overlays = [
|
||||
# packages
|
||||
inputs.self.overlays.packages
|
||||
inputs.self.overlays.overrides
|
||||
];
|
||||
};
|
||||
nix = {
|
||||
inherit (config) extraOptions;
|
||||
inherit (nix-config) extraOptions;
|
||||
registry = {
|
||||
nixpkgs = {
|
||||
from = {
|
||||
id = "nixpkgs";
|
||||
type = "indirect";
|
||||
};
|
||||
to = {
|
||||
owner = "nixos";
|
||||
repo = "nixpkgs";
|
||||
type = "github";
|
||||
};
|
||||
};
|
||||
stable = {
|
||||
from = {
|
||||
id = "stable";
|
||||
type = "indirect";
|
||||
};
|
||||
flake = nixpkgs;
|
||||
};
|
||||
unstable = {
|
||||
from = {
|
||||
id = "unstable";
|
||||
type = "indirect";
|
||||
};
|
||||
flake = nixpkgs-u;
|
||||
};
|
||||
nixpkgs = { from = { id = "nixpkgs"; type = "indirect"; }; to = { owner = "nixos"; repo = "nixpkgs"; type = "github"; }; };
|
||||
stable = { from = { id = "stable"; type = "indirect"; }; flake = inputs.nixpkgs; };
|
||||
unstable = { from = { id = "unstable"; type = "indirect"; }; flake = inputs.nixpkgs-u; };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Home manager configuration
|
||||
homeManagerModules = [
|
||||
home-manager.nixosModules.default
|
||||
inputs.home-manager.nixosModules.default
|
||||
{
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
|
|
@ -193,34 +81,29 @@
|
|||
};
|
||||
}
|
||||
];
|
||||
|
||||
homeManagerUModules = [
|
||||
home-manager-u.nixosModules.default
|
||||
inputs.home-manager-u.nixosModules.default
|
||||
{ home-manager = { useGlobalPkgs = true; useUserPackages = true; }; }
|
||||
];
|
||||
|
||||
|
||||
commonModules = [
|
||||
# Nix configuration
|
||||
nix_configuration
|
||||
basic_module
|
||||
|
||||
inputs.nix-rice.modules.default
|
||||
./modules/nixos/rice.nix
|
||||
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
|
||||
# Agenix configuration
|
||||
agenix.nixosModules.default
|
||||
inputs.agenix.nixosModules.default
|
||||
{
|
||||
age.secrets = {
|
||||
# oauth_proxy_client_credentials.file = ./secrets/oauth_proxy_client_credentials.age;
|
||||
# spotify_password = { file = ./secrets/spotify_password.age; owner = "bertof"; };
|
||||
wg_psk = {
|
||||
file = ./secrets/wg_psk.age;
|
||||
};
|
||||
baldur_wg_priv = {
|
||||
file = ./secrets/baldur_wg_priv.age;
|
||||
};
|
||||
oppo_wg_priv = {
|
||||
file = ./secrets/oppo_wg_priv.age;
|
||||
};
|
||||
wg_psk.file = ./secrets/wg_psk.age;
|
||||
baldur_wg_priv.file = ./secrets/baldur_wg_priv.age;
|
||||
oppo_wg_priv.file = ./secrets/oppo_wg_priv.age;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -230,158 +113,236 @@
|
|||
./modules/nixos/basics
|
||||
];
|
||||
|
||||
|
||||
odinCommonModules = [
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
inputs.nixos-hardware.nixosModules.common-pc-laptop
|
||||
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
|
||||
./instances/odin/hardware-configuration.nix
|
||||
./instances/odin/common_configuration.nix
|
||||
|
||||
# S3 cache write
|
||||
./modules/nixos/s3_cache_write.nix
|
||||
|
||||
# ./modules/nixos/pro_audio.nix
|
||||
./modules/nixos/kdeconnect.nix
|
||||
./modules/nixos/steam.nix
|
||||
|
||||
./modules/nixos/hyprland.nix
|
||||
{ home-manager.users.bertof.imports = [ ./modules/hm/hyprland.nix ]; }
|
||||
|
||||
./modules/nixos/musa.nix
|
||||
] ++ homeManagerUModules ++ [{ home-manager.users.bertof = import ./instances/odin/hm.nix; }];
|
||||
|
||||
installerModules = commonModules ++ [ ./modules/nixos/installer.nix ];
|
||||
in
|
||||
inputs.flake-parts.lib.mkFlake { inherit inputs; } {
|
||||
systems = import inputs.systems;
|
||||
imports = [
|
||||
inputs.git-hooks-nix.flakeModule
|
||||
];
|
||||
perSystem = { config, pkgs, system, ... }: {
|
||||
_module.args.pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config = nix-config;
|
||||
overlays = [
|
||||
# inputs.nix-rice.overlays.default
|
||||
inputs.self.overlays.packages
|
||||
];
|
||||
};
|
||||
|
||||
thorConfig = {
|
||||
nixosConfigurations = {
|
||||
thor = nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules =
|
||||
commonModules
|
||||
++ [
|
||||
./instances/thor/hardware-configuration.nix
|
||||
nixos-hardware.nixosModules.common-cpu-amd
|
||||
nixos-hardware.nixosModules.common-pc-ssd
|
||||
./instances/thor/configuration.nix
|
||||
pre-commit.settings.hooks = {
|
||||
deadnix.enable = true;
|
||||
nixpkgs-fmt.enable = true;
|
||||
statix.enable = true;
|
||||
};
|
||||
|
||||
# S3 cache write
|
||||
./modules/nixos/s3_cache_write.nix
|
||||
devShells.default = pkgs.mkShell {
|
||||
shellHook = ''
|
||||
${config.pre-commit.installationScript}
|
||||
LOCAL_KEY = "/etc/nix/key";
|
||||
'';
|
||||
};
|
||||
|
||||
./modules/nixos/pro_audio.nix
|
||||
./modules/nixos/kdeconnect.nix
|
||||
./modules/nixos/steam.nix
|
||||
formatter = pkgs.nixpkgs-fmt;
|
||||
|
||||
./modules/nixos/plymouth.nix
|
||||
./modules/nixos/hyprland.nix
|
||||
{
|
||||
home-manager.users.bertof.imports = [
|
||||
./modules/hm/hyprland.nix
|
||||
./modules/hm/swayidle.nix
|
||||
];
|
||||
}
|
||||
packages = {
|
||||
inherit
|
||||
(pkgs)
|
||||
keyboard-switch
|
||||
sddm-sugar-dark
|
||||
sddm-theme-clairvoyance
|
||||
wl-clipedit
|
||||
wl-lockscreen
|
||||
wl-update-background
|
||||
;
|
||||
|
||||
./modules/nixos/musa.nix
|
||||
]
|
||||
++ homeManagerUModules
|
||||
++ [{ home-manager.users.bertof = import ./instances/thor/hm.nix; }];
|
||||
|
||||
# Installer ISO
|
||||
install-iso = inputs.nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
modules = installerModules;
|
||||
format = "install-iso";
|
||||
};
|
||||
# RAW base image
|
||||
raw-base-image = inputs.nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
modules = installerModules;
|
||||
format = "raw-efi";
|
||||
};
|
||||
# VMDK base image
|
||||
vmdk-base-image = inputs.nixos-generators.nixosGenerate {
|
||||
system = "x86_64-linux";
|
||||
modules = installerModules;
|
||||
format = "vmware";
|
||||
};
|
||||
# Aarch64 base image
|
||||
aarch64-base-image = inputs.nixos-generators.nixosGenerate {
|
||||
system = "aarch64-linux";
|
||||
modules = installerModules;
|
||||
format = "sd-aarch64";
|
||||
};
|
||||
# Installer DigitalOcean
|
||||
do-image = inputs.nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
modules = installerModules;
|
||||
format = "do";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
odinConfig = {
|
||||
nixosConfigurations =
|
||||
let
|
||||
odinCommonModules = [
|
||||
nixos-hardware.nixosModules.common-cpu-intel
|
||||
nixos-hardware.nixosModules.common-pc-laptop
|
||||
nixos-hardware.nixosModules.common-pc-laptop-ssd
|
||||
./instances/odin/hardware-configuration.nix
|
||||
./instances/odin/common_configuration.nix
|
||||
flake = {
|
||||
|
||||
overlays = {
|
||||
default = inputs.self.overlays.packages;
|
||||
|
||||
packages = self: _super: {
|
||||
keyboard-switch = self.callPackage ./pkgs/keyboard-switch { };
|
||||
sddm-sugar-dark = self.callPackage ./pkgs/sddm-sugar-dark { };
|
||||
sddm-theme-clairvoyance = self.callPackage ./pkgs/sddm-theme-clairvoyance { };
|
||||
wl-clipedit = self.callPackage ./pkgs/wl-clipedit { };
|
||||
wl-lockscreen = self.callPackage ./pkgs/wl-lockscreen { };
|
||||
wl-update-background = self.callPackage ./pkgs/wl-update-background { };
|
||||
};
|
||||
|
||||
overrides = _self: super: {
|
||||
google-chrome = super.google-chrome.override { commandLineArgs = [ "--password-store=gnome" "--force-dark-mode" ]; };
|
||||
sddm-theme-clairvoyance = super.sddm-theme-clairvoyance.override { wallpaper = ./wallpapers/background.jpg; };
|
||||
};
|
||||
|
||||
# two-channels = (self: _: {
|
||||
# stable_pkgs = import inputs.nixpkgs {
|
||||
# inherit config overlays;
|
||||
# inherit (self) system;
|
||||
# };
|
||||
# unstable_pkgs = import inputs.nixpkgs-u {
|
||||
# inherit config overlays;
|
||||
# inherit (self) system;
|
||||
# };
|
||||
# });
|
||||
};
|
||||
|
||||
nixosConfigurations = {
|
||||
thor = inputs.nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ [
|
||||
./instances/thor/hardware-configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-amd
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
./instances/thor/configuration.nix
|
||||
|
||||
# S3 cache write
|
||||
./modules/nixos/s3_cache_write.nix
|
||||
|
||||
# ./modules/nixos/pro_audio.nix
|
||||
./modules/nixos/pro_audio.nix
|
||||
./modules/nixos/kdeconnect.nix
|
||||
./modules/nixos/steam.nix
|
||||
|
||||
./modules/nixos/plymouth.nix
|
||||
./modules/nixos/hyprland.nix
|
||||
{ home-manager.users.bertof.imports = [ ./modules/hm/hyprland.nix ]; }
|
||||
{
|
||||
home-manager.users.bertof.imports = [
|
||||
./modules/hm/hyprland.nix
|
||||
./modules/hm/swayidle.nix
|
||||
];
|
||||
}
|
||||
|
||||
./modules/nixos/musa.nix
|
||||
] ++ homeManagerUModules ++ [{ home-manager.users.bertof = import ./instances/odin/hm.nix; }];
|
||||
in
|
||||
rec {
|
||||
odin-nvidia = nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-nvidia.nix ];
|
||||
};
|
||||
|
||||
odin-intel = nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-intel.nix ];
|
||||
};
|
||||
|
||||
odin = odin-intel;
|
||||
] ++ homeManagerUModules ++ [{
|
||||
home-manager.users.bertof = import ./instances/thor/hm.nix;
|
||||
}];
|
||||
};
|
||||
};
|
||||
|
||||
heimdallConfig = {
|
||||
nixosConfigurations = {
|
||||
heimdall = nixpkgs.lib.nixosSystem {
|
||||
odin-nvidia = inputs.nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules =
|
||||
commonModules
|
||||
++ [
|
||||
nixos-hardware.nixosModules.common-cpu-amd
|
||||
nixos-hardware.nixosModules.common-gpu-amd
|
||||
nixos-hardware.nixosModules.common-pc-ssd
|
||||
./modules/nixos/server
|
||||
|
||||
./instances/heimdall/hardware-configuration.nix
|
||||
./instances/heimdall/configuration.nix
|
||||
|
||||
./modules/nixos/users/tiziano.nix
|
||||
|
||||
./modules/nixos/torrentbox.nix
|
||||
./modules/nixos/minio.nix
|
||||
./modules/nixos/rclone.nix
|
||||
./modules/nixos/nextcloud.nix
|
||||
# ./modules/nixos/ntfy.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
]
|
||||
++ homeManagerModules
|
||||
++ [{ home-manager.users.bertof = import ./instances/heimdall/hm.nix; }];
|
||||
modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-nvidia.nix ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
freyaConfig = {
|
||||
nixosConfigurations = {
|
||||
freya = nixpkgs.lib.nixosSystem {
|
||||
odin = inputs.nixpkgs-u.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ odinCommonModules ++ [ ./instances/odin/configuration-intel.nix ];
|
||||
};
|
||||
|
||||
heimdall = inputs.nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ [
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-amd
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-amd
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
./modules/nixos/server
|
||||
|
||||
./instances/heimdall/hardware-configuration.nix
|
||||
./instances/heimdall/configuration.nix
|
||||
|
||||
./modules/nixos/users/tiziano.nix
|
||||
|
||||
./modules/nixos/torrentbox.nix
|
||||
./modules/nixos/minio.nix
|
||||
./modules/nixos/rclone.nix
|
||||
./modules/nixos/nextcloud.nix
|
||||
# ./modules/nixos/ntfy.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
] ++ homeManagerModules ++ [{
|
||||
home-manager.users.bertof = import ./instances/heimdall/hm.nix;
|
||||
}];
|
||||
};
|
||||
|
||||
freya = inputs.nixpkgs.lib.nixosSystem {
|
||||
system = "aarch64-linux";
|
||||
modules =
|
||||
commonModules
|
||||
++ [
|
||||
nixos-hardware.nixosModules.raspberry-pi-4
|
||||
(
|
||||
{ lib, ... }:
|
||||
{
|
||||
boot.supportedFilesystems = lib.mkForce [
|
||||
"btrfs"
|
||||
"reiserfs"
|
||||
"vfat"
|
||||
"f2fs"
|
||||
"xfs"
|
||||
"ntfs"
|
||||
"cifs"
|
||||
];
|
||||
}
|
||||
)
|
||||
./modules/nixos/server
|
||||
modules = commonModules ++ [
|
||||
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
||||
({ lib, ... }: {
|
||||
boot.supportedFilesystems = lib.mkForce [
|
||||
"btrfs"
|
||||
"reiserfs"
|
||||
"vfat"
|
||||
"f2fs"
|
||||
"xfs"
|
||||
"ntfs"
|
||||
"cifs"
|
||||
];
|
||||
})
|
||||
./modules/nixos/server
|
||||
|
||||
./instances/freya/hardware-configuration.nix
|
||||
./instances/freya/configuration.nix
|
||||
./instances/freya/hardware-configuration.nix
|
||||
./instances/freya/configuration.nix
|
||||
|
||||
./modules/nixos/users/tiziano.nix
|
||||
./modules/nixos/users/tiziano.nix
|
||||
|
||||
./modules/nixos/torrentbox.nix
|
||||
./modules/nixos/minio.nix
|
||||
# ./modules/nixos/nextcloud.nix
|
||||
./modules/nixos/ntfy.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
]
|
||||
++ homeManagerModules
|
||||
++ [{ home-manager.users.bertof = import ./instances/freya/hm.nix; }];
|
||||
./modules/nixos/torrentbox.nix
|
||||
./modules/nixos/minio.nix
|
||||
# ./modules/nixos/nextcloud.nix
|
||||
./modules/nixos/ntfy.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
] ++ homeManagerModules ++ [{
|
||||
home-manager.users.bertof = import ./instances/freya/hm.nix;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
baldurConfig = {
|
||||
nixosConfigurations = {
|
||||
baldur = nixpkgs.lib.nixosSystem {
|
||||
baldur = inputs.nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = commonModules ++ [
|
||||
./modules/nixos/server
|
||||
|
|
@ -399,141 +360,57 @@
|
|||
# }]
|
||||
;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lokiConfig = {
|
||||
nixosConfigurations = {
|
||||
loki = nixpkgs.lib.nixosSystem {
|
||||
loki = inputs.nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules =
|
||||
commonModules
|
||||
++ [
|
||||
./modules/nixos/server
|
||||
modules = commonModules ++ [
|
||||
./modules/nixos/server
|
||||
|
||||
nixos-hardware.nixosModules.common-cpu-intel
|
||||
nixos-hardware.nixosModules.common-pc-ssd
|
||||
./instances/loki/hardware-configuration.nix
|
||||
./instances/loki/configuration.nix
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
inputs.nixos-hardware.nixosModules.common-pc-ssd
|
||||
./instances/loki/hardware-configuration.nix
|
||||
./instances/loki/configuration.nix
|
||||
|
||||
./modules/nixos/users/tiziano.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
]
|
||||
++ homeManagerModules
|
||||
++ [
|
||||
{
|
||||
home-manager.users.bertof = import ./instances/loki/hm.nix;
|
||||
home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix;
|
||||
}
|
||||
];
|
||||
./modules/nixos/users/tiziano.nix
|
||||
# S3 cache read
|
||||
./modules/nixos/s3_cache_read.nix
|
||||
] ++ homeManagerModules ++ [{
|
||||
home-manager.users.bertof = import ./instances/loki/hm.nix;
|
||||
home-manager.users.tiziano = import ./instances/loki/hm_tiziano.nix;
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
deployments = {
|
||||
# Deploy-rs checks
|
||||
checks = builtins.mapAttrs (_system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib;
|
||||
# # Deploy-rs checks
|
||||
# checks = builtins.mapAttrs (_system: deployLib: deployLib.deployChecks inputs.self.deploy) inputs.deploy-rs.lib;
|
||||
|
||||
# Map nodes to Deploy-rs deployments
|
||||
deploy.nodes = {
|
||||
baldur = {
|
||||
hostname = "baldur.bertof.net";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.baldur;
|
||||
# Map nodes to Deploy-rs deployments
|
||||
deploy.nodes = {
|
||||
baldur = {
|
||||
hostname = "baldur.bertof.net";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.baldur; };
|
||||
};
|
||||
};
|
||||
freya = {
|
||||
hostname = "freya.tsn";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.freya;
|
||||
freya = {
|
||||
hostname = "freya.tsn";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.aarch64-linux.activate.nixos inputs.self.nixosConfigurations.freya; };
|
||||
};
|
||||
};
|
||||
heimdall = {
|
||||
hostname = "heimdall.tsn";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.heimdall;
|
||||
heimdall = {
|
||||
hostname = "heimdall.tsn";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.heimdall; };
|
||||
};
|
||||
};
|
||||
loki = {
|
||||
hostname = "loki.tsn";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.loki;
|
||||
loki = {
|
||||
hostname = "loki.tsn";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.loki; };
|
||||
};
|
||||
};
|
||||
odin = {
|
||||
hostname = "odin.tsn";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.odin;
|
||||
odin = {
|
||||
hostname = "odin.tsn";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.odin; };
|
||||
};
|
||||
};
|
||||
thor = {
|
||||
hostname = "thor.tsn";
|
||||
profiles.system = {
|
||||
user = "root";
|
||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.thor;
|
||||
thor = {
|
||||
hostname = "thor.tsn";
|
||||
profiles.system = { user = "root"; path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos inputs.self.nixosConfigurations.thor; };
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
images =
|
||||
with flake-utils.lib;
|
||||
eachSystem
|
||||
[
|
||||
system.x86_64-linux
|
||||
system.aarch64-linux
|
||||
]
|
||||
(system: {
|
||||
packages = {
|
||||
# Installer ISO
|
||||
install-iso = nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
modules = installerModules;
|
||||
format = "install-iso";
|
||||
};
|
||||
# RAW base image
|
||||
raw-base-image = nixos-generators.nixosGenerate {
|
||||
system = flake-utils.lib.system.x86_64-linux;
|
||||
modules = installerModules;
|
||||
format = "raw-efi";
|
||||
};
|
||||
# VMDK base image
|
||||
vmdk-base-image = nixos-generators.nixosGenerate {
|
||||
system = flake-utils.lib.system.x86_64-linux;
|
||||
modules = installerModules;
|
||||
format = "vmware";
|
||||
};
|
||||
# Aarch64 base image
|
||||
aarch64-base-image = nixos-generators.nixosGenerate {
|
||||
system = flake-utils.lib.system.aarch64-linux;
|
||||
modules = installerModules;
|
||||
format = "sd-aarch64";
|
||||
};
|
||||
# Installer DigitalOcean
|
||||
do-image = nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
modules = installerModules;
|
||||
format = "do";
|
||||
};
|
||||
};
|
||||
});
|
||||
|
||||
in
|
||||
builtins.foldl' nixpkgs.lib.recursiveUpdate { } [
|
||||
basic
|
||||
thorConfig
|
||||
odinConfig
|
||||
freyaConfig
|
||||
baldurConfig
|
||||
heimdallConfig
|
||||
lokiConfig
|
||||
deployments
|
||||
images
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -300,7 +300,6 @@ in
|
|||
services.home-assistant = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
# package = pkgs.unstable_pkgs.home-assistant;
|
||||
config = {
|
||||
default_config = { };
|
||||
|
||||
|
|
|
|||
|
|
@ -5,24 +5,19 @@
|
|||
, ...
|
||||
}:
|
||||
{
|
||||
boot.initrd.kernelModules = [ "i915" ];
|
||||
|
||||
boot = {
|
||||
initrd.kernelModules = [ "i915" ];
|
||||
kernelPackages = pkgs.unstable_pkgs.linuxPackages;
|
||||
};
|
||||
|
||||
hardware.nvidia =
|
||||
{
|
||||
# modesetting.enable = true;
|
||||
# package = pkgs.linuxPackages.nvidia_x11;
|
||||
open = false;
|
||||
prime = {
|
||||
offload.enable = false;
|
||||
sync.enable = true;
|
||||
intelBusId = "PCI:0:2:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
};
|
||||
hardware.nvidia = {
|
||||
# modesetting.enable = true;
|
||||
# package = pkgs.linuxPackages.nvidia_x11;
|
||||
open = false;
|
||||
prime = {
|
||||
offload.enable = false;
|
||||
sync.enable = true;
|
||||
intelBusId = "PCI:0:2:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
};
|
||||
};
|
||||
|
||||
programs.gamemode = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -56,9 +56,6 @@
|
|||
wireguard-tools
|
||||
xournalpp
|
||||
zoom-us
|
||||
;
|
||||
inherit (pkgs.unstable_pkgs)
|
||||
# heroic
|
||||
proton-pass;
|
||||
};
|
||||
};
|
||||
|
|
@ -100,7 +97,6 @@
|
|||
../../modules/hm/biblio.nix
|
||||
# ../../modules/hm/bitwarden.nix
|
||||
# ../../modules/hm/blender.nix
|
||||
# ../../modules/hm/bspwm.nix
|
||||
../../modules/hm/cava.nix
|
||||
# ../../modules/hm/dwarf-fortress.nix
|
||||
../../modules/hm/easyeffects.nix
|
||||
|
|
@ -142,7 +138,7 @@
|
|||
../../modules/hm/syncthing.nix
|
||||
# ../../modules/hm/thunar.nix
|
||||
# ../../modules/hm/twmn.nix
|
||||
../../modules/hm/update_background.nix
|
||||
# ../../modules/hm/update_background.nix
|
||||
../../modules/hm/vim.nix
|
||||
../../modules/hm/virtualization.nix
|
||||
../../modules/hm/webapp.nix
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@
|
|||
xournalpp
|
||||
zoom-us
|
||||
;
|
||||
inherit (pkgs.unstable_pkgs) heroic;
|
||||
inherit (pkgs) heroic;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -91,7 +91,6 @@
|
|||
../../modules/hm/biblio.nix
|
||||
# ../../modules/hm/bitwarden.nix
|
||||
../../modules/hm/blender_nvidia.nix
|
||||
# ../../modules/hm/bspwm.nix
|
||||
../../modules/hm/cava.nix
|
||||
# ../../modules/hm/dwarf-fortress.nix
|
||||
../../modules/hm/easyeffects.nix
|
||||
|
|
@ -130,15 +129,13 @@
|
|||
# ../../modules/hm/screen_locker.nix
|
||||
# ../../modules/hm/security.nix
|
||||
# ../../modules/hm/spotifyd.nix
|
||||
../../modules/hm/sxhkd.nix
|
||||
../../modules/hm/syncthing.nix
|
||||
# ../../modules/hm/thunar.nix
|
||||
# ../../modules/hm/twmn.nix
|
||||
../../modules/hm/update_background.nix
|
||||
# ../../modules/hm/update_background.nix
|
||||
../../modules/hm/vim.nix
|
||||
../../modules/hm/virtualization.nix
|
||||
../../modules/hm/webapp.nix
|
||||
../../modules/hm/wl_update_background.nix
|
||||
../../modules/hm/xresources.nix
|
||||
../../modules/hm/zathura.nix
|
||||
../../modules/hm/yazi.nix
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex rec {
|
||||
inherit (pkgs.rice.colorPalette) normal bright primary;
|
||||
dim = pkgs.rice.colorPalette.dark;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rec {
|
||||
inherit (rice.colorPalette) normal bright primary;
|
||||
dim = rice.colorPalette.dark;
|
||||
cursor = {
|
||||
cursor = normal.white;
|
||||
text = normal.black;
|
||||
|
|
@ -23,7 +25,7 @@ let
|
|||
in
|
||||
{
|
||||
# Include fonts packages
|
||||
home.packages = [ pkgs.rice.font.monospace.package ];
|
||||
home.packages = [ rice.font.monospace.package ];
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
|
@ -41,10 +43,10 @@ in
|
|||
};
|
||||
scrolling.history = 3000;
|
||||
font = {
|
||||
normal.family = pkgs.rice.font.monospace.name;
|
||||
inherit (pkgs.rice.font.monospace) size;
|
||||
normal.family = rice.font.monospace.name;
|
||||
inherit (rice.font.monospace) size;
|
||||
};
|
||||
window.opacity = pkgs.rice.opacity;
|
||||
window.opacity = rice.opacity;
|
||||
mouse = {
|
||||
# hide_when_typing = true;
|
||||
hints.modifiers = "Control";
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
# inherit (pkgs) calibre;
|
||||
inherit (pkgs.unstable_pkgs) mangal;
|
||||
inherit (pkgs) mangal;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [ (pkgs.unstable_pkgs.blender.override { cudaSupport = true; }) ];
|
||||
home.packages = [ (pkgs.blender.override { cudaSupport = true; }) ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,84 +0,0 @@
|
|||
{ pkgs, lib, ... }:
|
||||
let
|
||||
xsetroot = "${pkgs.xorg.xsetroot}/bin/xsetroot";
|
||||
monitorPages = [
|
||||
"Ⅰ"
|
||||
"Ⅱ"
|
||||
"Ⅲ"
|
||||
"Ⅳ"
|
||||
"Ⅴ"
|
||||
"Ⅵ"
|
||||
"Ⅶ"
|
||||
"Ⅷ"
|
||||
"Ⅸ"
|
||||
"Ⅹ"
|
||||
];
|
||||
monitorPagesString = lib.strings.concatStringsSep " " monitorPages;
|
||||
monitorSetupScript = pkgs.writeShellScript "monitorSetupScript" ''
|
||||
for monitor in $(bspc query -M --names); do
|
||||
bspc monitor $monitor -d ${monitorPagesString}
|
||||
done
|
||||
${pkgs.autorandr}/bin/autorandr -c || true
|
||||
systemctl --user restart polybar # Restart polybar
|
||||
systemctl --user restart kdeconnect-indicator # Restart polybar
|
||||
'';
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./picom.nix
|
||||
./polybar.nix
|
||||
./sxhkd.nix
|
||||
./update_background.nix
|
||||
./xidlehook.nix
|
||||
./dunst.nix
|
||||
];
|
||||
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
arandr
|
||||
blueman
|
||||
dmenu
|
||||
keyboard-switch
|
||||
;
|
||||
};
|
||||
|
||||
xsession.windowManager.bspwm = {
|
||||
enable = true;
|
||||
settings = {
|
||||
border_width = 1;
|
||||
border_radius = 8;
|
||||
window_gap = 2;
|
||||
split_ratio = 0.5;
|
||||
top_padding = 0;
|
||||
bottom_padding = 0;
|
||||
right_padding = 0;
|
||||
left_padding = 0;
|
||||
borderless_monocle = true;
|
||||
gapless_monocle = false;
|
||||
normal_border_color = strPalette.normal.blue;
|
||||
focused_border_color = strPalette.bright.red;
|
||||
};
|
||||
# monitors = builtins.foldl' (acc: monitor: acc // { ${monitor} = monitorPages; }) { } monitors;
|
||||
rules = {
|
||||
"*" = {
|
||||
follow = true;
|
||||
};
|
||||
"Zathura" = {
|
||||
state = "tiled";
|
||||
};
|
||||
"Yad" = {
|
||||
state = "floating";
|
||||
};
|
||||
};
|
||||
startupPrograms = [
|
||||
"${monitorSetupScript}" # Setup monitors
|
||||
"${xsetroot} -solid black -cursor_name left_ptr" # Set cursor
|
||||
"${pkgs.update-background}/bin/update-background" # Set background
|
||||
];
|
||||
};
|
||||
services = {
|
||||
network-manager-applet.enable = true;
|
||||
blueman-applet.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{ pkgs, lib, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
fmtString = str: "'${str}'";
|
||||
in
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = builtins.attrValues { inherit (pkgs.unstable_pkgs.jetbrains) datagrip jdk; };
|
||||
home.packages = builtins.attrValues { inherit (pkgs.jetbrains) datagrip jdk; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
pkgs.k9s
|
||||
pkgs.awscli2
|
||||
pkgs.lens
|
||||
pkgs.unstable_pkgs.kubevirt
|
||||
pkgs.kubevirt
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,26 +1,24 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
strPalette = nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRGBHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs) dunst;
|
||||
inherit (pkgs.rice.font.normal) package;
|
||||
inherit (rice.font.normal) package;
|
||||
};
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
iconTheme = {
|
||||
package = pkgs.qogir-icon-theme;
|
||||
name = "Qogir";
|
||||
};
|
||||
iconTheme = { package = pkgs.qogir-icon-theme; name = "Qogir"; };
|
||||
settings = {
|
||||
global = {
|
||||
browser = "${pkgs.xdg-utils}/bin/xdg-open";
|
||||
corner_radius = 10;
|
||||
dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst:";
|
||||
follow = "keyboard";
|
||||
font = "${pkgs.rice.font.normal.name} 10";
|
||||
font = "${rice.font.normal.name} 10";
|
||||
frame_color = strPalette.normal.blue;
|
||||
frame_width = 1;
|
||||
height = 320;
|
||||
|
|
@ -28,7 +26,7 @@ in
|
|||
notification_limit = 10;
|
||||
offset = "7x7";
|
||||
separator_color = strPalette.normal.blue;
|
||||
transparency = 100 - nix-rice.float.round (pkgs.rice.opacity * 100);
|
||||
transparency = 100 - nix-rice.float.round (rice.opacity * 100);
|
||||
width = "(0, 320)";
|
||||
};
|
||||
urgency_low = {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
fonts.fontconfig = {
|
||||
enable = true;
|
||||
};
|
||||
fonts.fontconfig.enable = true;
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
dejavu_fonts
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
{
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = pkgs.rice.font.normal;
|
||||
font = nixosConfig.nix-rice.rice.font.normal;
|
||||
iconTheme = {
|
||||
package = pkgs.qogir-icon-theme;
|
||||
name = "Qogir-dark";
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
};
|
||||
programs.helix = {
|
||||
enable = true;
|
||||
package = pkgs.unstable_pkgs.helix;
|
||||
languages.language = [
|
||||
{
|
||||
name = "nix";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
{ nixosConfig, pkgs, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = palette.toRgbaShortHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
|
||||
imports = [
|
||||
./kitty.nix
|
||||
./nautilus.nix
|
||||
|
|
@ -26,7 +29,7 @@
|
|||
swaylock
|
||||
swww
|
||||
# walker
|
||||
way-lockscreen
|
||||
wl-lockscreen
|
||||
waybar
|
||||
wl-clipboard
|
||||
wl-clipedit
|
||||
|
|
@ -50,259 +53,255 @@
|
|||
};
|
||||
|
||||
xdg.configFile."hypr/hyprland.conf" = {
|
||||
text =
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbaShortHex pkgs.rice.colorPalette;
|
||||
in
|
||||
''
|
||||
#
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
#
|
||||
text = ''
|
||||
#
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
#
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# monitor=name,resolution,position,scale
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=Unknown-1,disable
|
||||
${
|
||||
if nixosConfig.networking.hostName == "thor" then
|
||||
''
|
||||
monitor=DP-3,preferred,1080x420,auto
|
||||
monitor=HDMI-A-1,preferred,0x0,auto,transform,3
|
||||
''
|
||||
else if nixosConfig.networking.hostName == "odin" then
|
||||
''
|
||||
monitor=eDP-1,preferred,320x1440,1
|
||||
monitor=DP-1,preferred,0x0,1
|
||||
''
|
||||
else
|
||||
""
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# monitor=name,resolution,position,scale
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=Unknown-1,disable
|
||||
${
|
||||
if nixosConfig.networking.hostName == "thor" then
|
||||
''
|
||||
monitor=DP-3,preferred,1080x420,auto
|
||||
monitor=HDMI-A-1,preferred,0x0,auto,transform,3
|
||||
''
|
||||
else if nixosConfig.networking.hostName == "odin" then
|
||||
''
|
||||
monitor=eDP-1,preferred,320x1440,1
|
||||
monitor=DP-1,preferred,0x0,1
|
||||
''
|
||||
else
|
||||
""
|
||||
}
|
||||
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
exec-once = ${
|
||||
if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true"
|
||||
} & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"}
|
||||
kb_variant = ,,colemak
|
||||
kb_model =
|
||||
kb_options = grp:menu_toggle,compose:rctrl
|
||||
kb_rules =
|
||||
numlock_by_default = true
|
||||
|
||||
follow_mouse = 2
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
$LAPTOP_KEYBOARD_ENABLED = true
|
||||
device {
|
||||
name = at-translated-set-2-keyboard
|
||||
enabled = $LAPTOP_KEYBOARD_ENABLED
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard-2
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 1
|
||||
gaps_out = 2
|
||||
border_size = 2
|
||||
col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg
|
||||
col.inactive_border = rgba(${strPalette.bright.black})
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
exec-once = ${
|
||||
if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true"
|
||||
} & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target
|
||||
rounding = 10
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"}
|
||||
kb_variant = ,,colemak
|
||||
kb_model =
|
||||
kb_options = grp:menu_toggle,compose:rctrl
|
||||
kb_rules =
|
||||
numlock_by_default = true
|
||||
|
||||
follow_mouse = 2
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
$LAPTOP_KEYBOARD_ENABLED = true
|
||||
device {
|
||||
name = at-translated-set-2-keyboard
|
||||
enabled = $LAPTOP_KEYBOARD_ENABLED
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard-2
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 1
|
||||
gaps_out = 2
|
||||
border_size = 2
|
||||
col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg
|
||||
col.inactive_border = rgba(${strPalette.bright.black})
|
||||
|
||||
layout = dwindle
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
new_optimizations = true
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
}
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
rounding = 10
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
new_optimizations = true
|
||||
}
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
new_status = master
|
||||
}
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = true
|
||||
}
|
||||
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
# device:epic-mouse-v1 {
|
||||
# sensitivity = -0.5
|
||||
# }
|
||||
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
new_status = master
|
||||
}
|
||||
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = true
|
||||
}
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
# device:epic-mouse-v1 {
|
||||
# sensitivity = -0.5
|
||||
# }
|
||||
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# $mainMod = SUPER
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# $mainMod = SUPER
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = SUPER, RETURN, exec, kitty
|
||||
bind = SUPER, W, killactive,
|
||||
bind = SUPER, M, exec, way-lockscreen
|
||||
bind = SUPER_ALT_L, Q, exit,
|
||||
bind = SUPER, E, exec, nautilus
|
||||
bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq
|
||||
bind = SUPER_SHIFT, E, exec, nemo
|
||||
bind = SUPER, V, togglefloating,
|
||||
bind = SUPER, SPACE, exec, sirula
|
||||
bind = SUPER, F, fullscreen,
|
||||
bind = SUPER, P, pseudo, # dwindle
|
||||
bind = SUPER, J, togglesplit, # dwindle
|
||||
bind = SUPER ALT, E, exec, wofi-emoji
|
||||
bind = SUPER ALT, P, exec, wl-clipedit
|
||||
bind = SUPER, B, exec, wl-update-background
|
||||
bind = ,Print, exec, grimblast copy
|
||||
bind = SHIFT, Print, exec, grimblast copy area
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = SUPER, RETURN, exec, kitty
|
||||
bind = SUPER, W, killactive,
|
||||
bind = SUPER, M, exec, wl-lockscreen
|
||||
bind = SUPER_ALT_L, Q, exit,
|
||||
bind = SUPER, E, exec, nautilus
|
||||
bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq
|
||||
bind = SUPER_SHIFT, E, exec, nemo
|
||||
bind = SUPER, V, togglefloating,
|
||||
bind = SUPER, SPACE, exec, sirula
|
||||
bind = SUPER, F, fullscreen,
|
||||
bind = SUPER, P, pseudo, # dwindle
|
||||
bind = SUPER, J, togglesplit, # dwindle
|
||||
bind = SUPER ALT, E, exec, wofi-emoji
|
||||
bind = SUPER ALT, P, exec, wl-clipedit
|
||||
bind = SUPER, B, exec, wl-update-background
|
||||
bind = ,Print, exec, grimblast copy
|
||||
bind = SHIFT, Print, exec, grimblast copy area
|
||||
|
||||
|
||||
# Move focus to relative position
|
||||
bind = SUPER, left, movefocus, l
|
||||
bind = SUPER, right, movefocus, r
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER, down, movefocus, d
|
||||
# Move focus to relative position
|
||||
bind = SUPER, left, movefocus, l
|
||||
bind = SUPER, right, movefocus, r
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER, down, movefocus, d
|
||||
|
||||
# Move window to relative position
|
||||
bind = SUPER_SHIFT, left, movewindow, l
|
||||
bind = SUPER_SHIFT, right, movewindow, r
|
||||
bind = SUPER_SHIFT, up, movewindow, u
|
||||
bind = SUPER_SHIFT, down, movewindow, d
|
||||
# Move window to relative position
|
||||
bind = SUPER_SHIFT, left, movewindow, l
|
||||
bind = SUPER_SHIFT, right, movewindow, r
|
||||
bind = SUPER_SHIFT, up, movewindow, u
|
||||
bind = SUPER_SHIFT, down, movewindow, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = SUPER, 1, workspace, 1
|
||||
bind = SUPER, 2, workspace, 2
|
||||
bind = SUPER, 3, workspace, 3
|
||||
bind = SUPER, 4, workspace, 4
|
||||
bind = SUPER, 5, workspace, 5
|
||||
bind = SUPER, 6, workspace, 6
|
||||
bind = SUPER, 7, workspace, 7
|
||||
bind = SUPER, 8, workspace, 8
|
||||
bind = SUPER, 9, workspace, 9
|
||||
bind = SUPER, 0, workspace, 10
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = SUPER, 1, workspace, 1
|
||||
bind = SUPER, 2, workspace, 2
|
||||
bind = SUPER, 3, workspace, 3
|
||||
bind = SUPER, 4, workspace, 4
|
||||
bind = SUPER, 5, workspace, 5
|
||||
bind = SUPER, 6, workspace, 6
|
||||
bind = SUPER, 7, workspace, 7
|
||||
bind = SUPER, 8, workspace, 8
|
||||
bind = SUPER, 9, workspace, 9
|
||||
bind = SUPER, 0, workspace, 10
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = SUPER SHIFT, 1, movetoworkspace, 1
|
||||
bind = SUPER SHIFT, 2, movetoworkspace, 2
|
||||
bind = SUPER SHIFT, 3, movetoworkspace, 3
|
||||
bind = SUPER SHIFT, 4, movetoworkspace, 4
|
||||
bind = SUPER SHIFT, 5, movetoworkspace, 5
|
||||
bind = SUPER SHIFT, 6, movetoworkspace, 6
|
||||
bind = SUPER SHIFT, 7, movetoworkspace, 7
|
||||
bind = SUPER SHIFT, 8, movetoworkspace, 8
|
||||
bind = SUPER SHIFT, 9, movetoworkspace, 9
|
||||
bind = SUPER SHIFT, 0, movetoworkspace, 10
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = SUPER SHIFT, 1, movetoworkspace, 1
|
||||
bind = SUPER SHIFT, 2, movetoworkspace, 2
|
||||
bind = SUPER SHIFT, 3, movetoworkspace, 3
|
||||
bind = SUPER SHIFT, 4, movetoworkspace, 4
|
||||
bind = SUPER SHIFT, 5, movetoworkspace, 5
|
||||
bind = SUPER SHIFT, 6, movetoworkspace, 6
|
||||
bind = SUPER SHIFT, 7, movetoworkspace, 7
|
||||
bind = SUPER SHIFT, 8, movetoworkspace, 8
|
||||
bind = SUPER SHIFT, 9, movetoworkspace, 9
|
||||
bind = SUPER SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9]
|
||||
bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0
|
||||
bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1
|
||||
bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2
|
||||
bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3
|
||||
bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4
|
||||
bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5
|
||||
bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6
|
||||
bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7
|
||||
bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8
|
||||
bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9
|
||||
# Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9]
|
||||
bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0
|
||||
bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1
|
||||
bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2
|
||||
bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3
|
||||
bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4
|
||||
bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5
|
||||
bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6
|
||||
bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7
|
||||
bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8
|
||||
bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9
|
||||
|
||||
bind = ALT, Tab, cyclenext
|
||||
bind = ALT SHIFT, Tab, cyclenext, prev
|
||||
bind = ALT, Tab, cyclenext
|
||||
bind = ALT SHIFT, Tab, cyclenext, prev
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = SUPER, mouse_down, workspace, e+1
|
||||
bind = SUPER, mouse_up, workspace, e-1
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = SUPER, mouse_down, workspace, e+1
|
||||
bind = SUPER, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = SUPER, mouse:272, movewindow
|
||||
bindm = SUPER, mouse:273, resizewindow
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = SUPER, mouse:272, movewindow
|
||||
bindm = SUPER, mouse:273, resizewindow
|
||||
|
||||
bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+
|
||||
bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-
|
||||
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
|
||||
bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+
|
||||
bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-
|
||||
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
|
||||
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = SUPER ALT, Right, exec, playerctl next
|
||||
bind = SUPER ALT, Down, exec, playerctl play-pause
|
||||
bind = SUPER ALT, Left, exec, playerctl previous
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = SUPER ALT, Right, exec, playerctl next
|
||||
bind = SUPER ALT, Down, exec, playerctl play-pause
|
||||
bind = SUPER ALT, Left, exec, playerctl previous
|
||||
|
||||
bind = , XF86PowerOff, exec, wlogout
|
||||
bind = , XF86PowerOff, exec, wlogout
|
||||
|
||||
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
||||
bind = , XF86MonBrightnessDown, exec, brillo -U 10
|
||||
'';
|
||||
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
||||
bind = , XF86MonBrightnessDown, exec, brillo -U 10
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ in
|
|||
{
|
||||
# TODO: switch to module on next release
|
||||
|
||||
home.packages = [ pkgs.unstable_pkgs.joshuto ];
|
||||
home.packages = [ pkgs.joshuto ];
|
||||
home.shellAliases."fm" = "joshuto --change-directory";
|
||||
|
||||
xdg.configFile = {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
themeBuilder =
|
||||
palette: with palette; ''
|
||||
set-face global value rgb:${normal.magenta},default
|
||||
|
|
@ -275,7 +277,7 @@ in
|
|||
|
||||
# THEME FILE
|
||||
xdg.configFile."kak/colors/nord.kak".text = themeBuilder (
|
||||
pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette
|
||||
palette.toRgbShortHex rice.colorPalette
|
||||
);
|
||||
|
||||
xdg.configFile."kak-lsp/kak-lsp.toml".text = ''
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette)
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex {
|
||||
inherit (rice.colorPalette)
|
||||
background
|
||||
foreground
|
||||
color0
|
||||
|
|
@ -31,7 +33,7 @@ in
|
|||
enable_audio_bell = false;
|
||||
visual_bell_duration = toString 0.1;
|
||||
update_check_interval = 0;
|
||||
background_opacity = toString pkgs.rice.opacity;
|
||||
background_opacity = toString rice.opacity;
|
||||
close_on_child_death = "yes";
|
||||
clipboard_control = "write-clipboard write-primary read-clipboard read-primary";
|
||||
disable_ligatures = "never";
|
||||
|
|
@ -44,6 +46,6 @@ in
|
|||
"ctrl+shift+up" = "previous_window";
|
||||
"ctrl+shift+down" = "next_window";
|
||||
};
|
||||
font = pkgs.rice.font.monospace;
|
||||
font = rice.font.monospace;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbShortHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.mangohud = {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
programs.nix-index = {
|
||||
enable = true;
|
||||
# package = pkgs.unstable_pkgs.nix-index;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@
|
|||
, lib
|
||||
, ...
|
||||
}:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.rice) colorPalette opacity;
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
inherit (nixosConfig.nix-rice.rice) colorPalette opacity;
|
||||
alpha = 255 * opacity;
|
||||
grep = "${pkgs.gnugrep}/bin/grep";
|
||||
cut = "${pkgs.coreutils}/bin/cut";
|
||||
|
|
@ -62,27 +62,27 @@ let
|
|||
}"
|
||||
zsh -c 'rofi -show menu -modi "menu:rofi-power-menu --choices=shutdown/reboot/hibernate/logout"'
|
||||
'';
|
||||
colors = nix-rice.palette.toARGBHex rec {
|
||||
colors = palette.toARGBHex rec {
|
||||
normal = {
|
||||
foreground = nix-rice.color.darken 10 colorPalette.foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
foreground = color.darken 10 colorPalette.foreground;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.normal.blue;
|
||||
};
|
||||
|
||||
active = {
|
||||
inherit (colorPalette) foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.normal.yellow;
|
||||
};
|
||||
|
||||
selected = {
|
||||
inherit (colorPalette) foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.bright.red;
|
||||
};
|
||||
|
||||
inherit (colorPalette.normal) green red yellow;
|
||||
inherit (nix-rice.color) transparent;
|
||||
inherit (color) transparent;
|
||||
orange = colorPalette.bright.red;
|
||||
alert = orange;
|
||||
};
|
||||
|
|
@ -110,29 +110,22 @@ let
|
|||
bottom.size = 0;
|
||||
};
|
||||
font = [
|
||||
"${pkgs.rice.font.monospace.name}:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
"${rice.font.monospace.name}:size=${toString rice.font.monospace.size};2"
|
||||
# "Font Awesome 6 Free:size=14;0"
|
||||
# "Noto Color Emoji:size=2;2"
|
||||
"Noto Sans Symbols2:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
"Material Design Icons:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
# "EmojiOne Color:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK JP:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK KR:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK CN:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK HK:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans Symbols2:size=${toString rice.font.monospace.size};2"
|
||||
"Material Design Icons:size=${toString rice.font.monospace.size};2"
|
||||
# "EmojiOne Color:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK JP:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK KR:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK CN:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK HK:size=${toString rice.font.monospace.size};0"
|
||||
];
|
||||
enable-ipc = true;
|
||||
wm-restack = "bspwm";
|
||||
};
|
||||
|
||||
ramp = [
|
||||
"▂"
|
||||
"▃"
|
||||
"▄"
|
||||
"▅"
|
||||
"▆"
|
||||
"▇"
|
||||
];
|
||||
ramp = [ "▂" "▃" "▄" "▅" "▆" "▇" ];
|
||||
in
|
||||
{
|
||||
home.packages = builtins.attrValues {
|
||||
|
|
@ -140,7 +133,7 @@ in
|
|||
# emojione
|
||||
# noto-fonts-emoji
|
||||
# font-awesome
|
||||
inherit (pkgs.rice.font.monospace) package;
|
||||
inherit (rice.font.monospace) package;
|
||||
};
|
||||
services.polybar = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -14,44 +14,42 @@ in
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
ardour
|
||||
breeze-icons
|
||||
carla
|
||||
mixxx
|
||||
rnnoise
|
||||
#mamba
|
||||
# zrythm
|
||||
|
||||
# Plugins
|
||||
aeolus
|
||||
artyFX
|
||||
autotalent
|
||||
boops
|
||||
calf
|
||||
cardinal
|
||||
fluidsynth
|
||||
geonkick
|
||||
giada
|
||||
lsp-plugins
|
||||
samplv1
|
||||
sfizz
|
||||
surge
|
||||
surge-XT
|
||||
talentedhack
|
||||
vocproc
|
||||
x42-plugins
|
||||
zita-at1
|
||||
zyn-fusion
|
||||
zynaddsubfx
|
||||
# helm
|
||||
# noise-repellent
|
||||
# speech-denoiser
|
||||
# stochas
|
||||
# sunvox
|
||||
# tunefish
|
||||
# zrythm
|
||||
#mamba
|
||||
aeolus
|
||||
ardour
|
||||
artyFX
|
||||
autotalent
|
||||
boops
|
||||
breeze-icons
|
||||
calf
|
||||
cardinal
|
||||
carla
|
||||
fluidsynth
|
||||
geonkick
|
||||
giada
|
||||
lsp-plugins
|
||||
mixxx
|
||||
rnnoise
|
||||
samplv1
|
||||
sfizz
|
||||
surge
|
||||
surge-XT
|
||||
talentedhack
|
||||
vital
|
||||
vocproc
|
||||
x42-plugins
|
||||
zita-at1
|
||||
zyn-fusion
|
||||
zynaddsubfx
|
||||
;
|
||||
|
||||
inherit (pkgs.unstable_pkgs) vital;
|
||||
};
|
||||
|
||||
home.sessionVariables = variables;
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs) python3;
|
||||
inherit (pkgs.unstable_pkgs.jetbrains) pycharm-professional jdk;
|
||||
inherit (pkgs.jetbrains) pycharm-professional jdk;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
in
|
||||
{
|
||||
|
||||
home.packages = builtins.attrValues {
|
||||
|
|
@ -14,7 +18,7 @@
|
|||
programs.rofi = {
|
||||
enable = true;
|
||||
location = "center";
|
||||
font = "${pkgs.rice.font.monospace.name} ${toString pkgs.rice.font.monospace.size}";
|
||||
font = "${rice.font.monospace.name} ${toString rice.font.monospace.size}";
|
||||
plugins = [ pkgs.rofi-calc ];
|
||||
extraConfig = {
|
||||
modi = "drun,run,ssh,window,calc";
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@
|
|||
events = [
|
||||
{
|
||||
event = "before-sleep";
|
||||
command = "${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
}
|
||||
{
|
||||
event = "lock";
|
||||
command = "${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
}
|
||||
];
|
||||
timeouts = [
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
}
|
||||
{
|
||||
timeout = 120;
|
||||
command = "${pkgs.brillo}/bin/brillo -e -S 0; ${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.brillo}/bin/brillo -e -S 0; ${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
resumeCommand = "${pkgs.brillo}/bin/brillo -e -S 100";
|
||||
}
|
||||
];
|
||||
|
|
|
|||
|
|
@ -1,131 +0,0 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [
|
||||
# ./alacritty.nix
|
||||
./kitty.nix
|
||||
# ./nautilus.nix
|
||||
./nemo.nix
|
||||
./terminator.nix
|
||||
# ./thunar.nix
|
||||
./yazi.nix
|
||||
];
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
bc# required by bsp-layout
|
||||
bsp-layout
|
||||
clipedit
|
||||
lockscreen
|
||||
terminator
|
||||
;
|
||||
};
|
||||
services.sxhkd =
|
||||
let
|
||||
primaryTerminal = "kitty";
|
||||
secondaryTerminal = "terminator";
|
||||
fileManager =
|
||||
let
|
||||
ya = pkgs.writeShellScript "ya" ''
|
||||
tmp="$(mktemp -t "yazi-cwd.XXXXX")"
|
||||
yazi --cwd-file="$tmp"
|
||||
if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
|
||||
cd -- "$cwd"
|
||||
fi
|
||||
rm -f -- "$tmp"
|
||||
'';
|
||||
in
|
||||
"kitty -e bash ${ya}";
|
||||
secondaryFileManager = "nemo";
|
||||
emojiChooser = "rofimoji --skin-tone light -a copy";
|
||||
windowSwitcher = "rofi -show window";
|
||||
|
||||
arandr = "${pkgs.arandr}/bin/arandr";
|
||||
passwordChoser = "rofi-rbw";
|
||||
notify = "${pkgs.libnotify}/bin/notify-send";
|
||||
pamixer = "${pkgs.pamixer}/bin/pamixer";
|
||||
playerctl = "${pkgs.playerctl}/bin/playerctl";
|
||||
xbacklight = "${pkgs.xorg.xbacklight}/bin/xbacklight";
|
||||
resetBspwm = pkgs.writeShellScript "resetBspwm" ''
|
||||
bspc wm -r
|
||||
for p in {top,bottom,left,right}; do bspc config -m any ''${p}_padding 0; done # Reset padding
|
||||
systemctl --user restart polybar # Restart polybar
|
||||
${notify} "BSPWM restarted"
|
||||
'';
|
||||
moveAllNodesToPrimary = pkgs.writeShellScript "moveAllNodesToPrimary" ''
|
||||
comm -23 <(bspc query -N | sort) <(bspc query -m primary -N | sort) | while read n; do bspc node $n -m primary; done
|
||||
'';
|
||||
notifyVolume = pkgs.writeShellScript "notifyVolume" ''
|
||||
PATH=$PATH:"${
|
||||
lib.makeBinPath [
|
||||
pkgs.coreutils
|
||||
pkgs.pamixer
|
||||
]
|
||||
}"
|
||||
sink=`pamixer --get-default-sink | tail -n 1| sed -E 's/.+"(.+)"$/\1/'`
|
||||
muted=`pamixer --get-mute`
|
||||
volume=`pamixer --get-volume`
|
||||
if [[ $muted == "true" ]]; then
|
||||
${notify} -r 1 -h "int:value:0" "Muted" "$sink"
|
||||
else
|
||||
${notify} -r 1 -h "int:value:$volume" "Volume $volume%" "$sink"
|
||||
fi
|
||||
'';
|
||||
notifyBrightness = pkgs.writeShellScript "notifyBrightness" ''
|
||||
level=`printf "%.0f" $(${xbacklight} -get)`
|
||||
${notify} -r 2 -h "int:value:$level" "Luminosità $level"
|
||||
'';
|
||||
powermenu = pkgs.writeShellScript "powermenu" ''
|
||||
PATH=$PATH:"${
|
||||
lib.makeBinPath [
|
||||
pkgs.rofi
|
||||
pkgs.rofi-power-menu
|
||||
]
|
||||
}"
|
||||
rofi -show menu -modi "menu:rofi-power-menu --choices=shutdown/reboot/hibernate/logout"
|
||||
'';
|
||||
in
|
||||
{
|
||||
enable = true;
|
||||
keybindings = {
|
||||
"{,shift+}Print" = "${pkgs.gnome-screenshot}/bin/gnome-screenshot {-i,-a}";
|
||||
"XF86Audio{LowerVolume,Mute,RaiseVolume}" = "${pamixer} {-d 2 -u,-t,-i 2 -u} && ${notifyVolume}";
|
||||
"XF86Audio{Next,Play,Prev}" = "${playerctl} {next,play-pause,previous}";
|
||||
"XF86MonBrightness{Up,Down}" = "${xbacklight} -{inc,dec} 10 && ${notifyBrightness}";
|
||||
"XF86PowerOff" = toString powermenu;
|
||||
"alt + Tab" = windowSwitcher;
|
||||
"button10" = windowSwitcher;
|
||||
"super + Escape" = "pkill -USR1 -x sxhkd";
|
||||
"super + alt + e" = emojiChooser;
|
||||
"super + alt + i" = passwordChoser;
|
||||
"super + alt + m" = "lockscreen";
|
||||
"super + alt + o" = "${moveAllNodesToPrimary}";
|
||||
"super + alt + p" = "${arandr}";
|
||||
"super + alt + r" = "${resetBspwm}";
|
||||
"super + alt + shift + {h,j,k,l}" = "bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}";
|
||||
"super + alt + {Right,Down,Left}" = "${playerctl} {next,play-pause,previous}";
|
||||
"super + alt + {h,j,k,l}" = "bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}";
|
||||
"super + b" = "${pkgs.update-background}/bin/update-background";
|
||||
"super + bracket{left,right}" = "bspc desktop -f {prev,next}.local";
|
||||
"super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel";
|
||||
"super + ctrl + space" = "bspc node -p cancel";
|
||||
"super + ctrl + {1-9}" = "bspc node -o 0.{1-9}";
|
||||
"super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}";
|
||||
"super + e {_,+shift}" = "{${fileManager},${secondaryFileManager}}";
|
||||
"super + g" = "bspc node -s biggest";
|
||||
"super + m" = "bspc desktop -l next";
|
||||
"super + n {_, + shift}" = "bsp-layout {next, previous}";
|
||||
"super + shift + ctrl + d" = "rofi -show ssh";
|
||||
"super + shift + p" = "clipedit";
|
||||
"super + shift + {a,d}" = "bspc node @/ -C {forward,backward}";
|
||||
"super + shift + {h,j,k,l}" = ''dir={west,south,north,east}; bspc node -s "$dir.local" --follow || bspc node -m "$dir" --follow'';
|
||||
"super + {Left,Down,Up,Right}" = "bspc node -v {-20 0,0 20,0 -20,20 0}";
|
||||
"super + {_,shift + } Return" = "{${primaryTerminal} , ${secondaryTerminal}}";
|
||||
"super + {_,shift + } c" = "bspc node -f {next,prev}.local";
|
||||
"super + {_,shift + } space" = "rofi -show {drun,run}";
|
||||
"super + {_,shift + } w" = "bspc node -{c,k}";
|
||||
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} 'focused:^{1-9,10}'";
|
||||
"super + {h,j,k,l}" = "dir={west,south,north,east}; bspc node -f $dir || bspc monitor -f $dir";
|
||||
"super + {o,i}" = "bspc wm -h off;bspc node {older,newer} -f;bspc wm -h on";
|
||||
"super + {t,shift + t,s,f}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,11 +1,13 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette) normal bright dark;
|
||||
inherit (pkgs.rice.colorPalette.primary) background foreground;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex {
|
||||
inherit (rice.colorPalette) normal bright dark;
|
||||
inherit (rice.colorPalette.primary) background foreground;
|
||||
};
|
||||
opacity = toString pkgs.rice.opacity;
|
||||
font = pkgs.rice.font.monospace;
|
||||
opacity = toString rice.opacity;
|
||||
font = rice.font.monospace;
|
||||
colorString =
|
||||
normal: bright:
|
||||
builtins.concatStringsSep ":" [
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
font = pkgs.rice.font.normal;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRGBHex rice.colorPalette;
|
||||
font = rice.font.normal;
|
||||
in
|
||||
{
|
||||
services.twmn = {
|
||||
|
|
@ -17,7 +19,7 @@ in
|
|||
animation.bounce.enable = false;
|
||||
color = strPalette.primary.background;
|
||||
height = 32;
|
||||
opacity = pkgs.lib.nix-rice.float.round (pkgs.rice.opacity * 100);
|
||||
opacity = float.round (rice.opacity * 100);
|
||||
offset = {
|
||||
x = -20;
|
||||
y = 50;
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.rice) colorPalette;
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
inherit (nixosConfig.nix-rice.rice) colorPalette font;
|
||||
alpha = 0.9;
|
||||
custom = nix-rice.palette.toRGBHex {
|
||||
custom = palette.toRGBHex {
|
||||
inherit (colorPalette.primary) background foreground;
|
||||
alpha_background = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
alpha_background = color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
primary_accent = colorPalette.normal.blue;
|
||||
secondary_accent = colorPalette.normal.cyan;
|
||||
tertiary_accent = colorPalette.primary.yellow;
|
||||
palette = {
|
||||
primary_background_rgba = colorPalette.primary.background;
|
||||
tertiary_background_hex = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
tertiary_background_hex = color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
};
|
||||
};
|
||||
swaync-client = "${pkgs.swaynotificationcenter}/bin/swaync-client";
|
||||
|
|
@ -184,7 +184,7 @@ in
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0px;
|
||||
font-family: ${pkgs.rice.font.monospace.name};
|
||||
font-family: ${font.monospace.name};
|
||||
font-size: 10px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,5 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
update_time = "10m";
|
||||
backgrounds_directory = "$HOME/Immagini/Sfondi/1080+/1440+";
|
||||
update_script = pkgs.writeShellScriptBin "wl-update-background" ''
|
||||
set -e
|
||||
if [ $# -eq 0 ]; then
|
||||
image=`${pkgs.findutils}/bin/find ${backgrounds_directory} -type f | ${pkgs.gnugrep}/bin/grep -v "/\." | ${pkgs.coreutils}/bin/shuf -n 1`
|
||||
else
|
||||
image="$1"
|
||||
fi
|
||||
echo "image: $image"
|
||||
${pkgs.swww}/bin/swww img "$image"
|
||||
'';
|
||||
in
|
||||
{
|
||||
home.packages = [ update_script ];
|
||||
{ pkgs, ... }: {
|
||||
home.packages = [ pkgs.wl-update-background ];
|
||||
|
||||
systemd.user.services."wl-update-background" = {
|
||||
Unit = {
|
||||
|
|
@ -29,7 +14,7 @@ in
|
|||
Service = {
|
||||
Type = "oneshot";
|
||||
IOSchedulingClass = "idle";
|
||||
ExecStart = "${update_script}/bin/wl-update-background";
|
||||
ExecStart = "${pkgs.wl-update-background}/bin/wl-update-background";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -38,7 +23,7 @@ in
|
|||
Description = "Set random desktop background using swww";
|
||||
};
|
||||
Timer = {
|
||||
OnUnitActiveSec = update_time;
|
||||
OnUnitActiveSec = "10m";
|
||||
};
|
||||
Install = {
|
||||
WantedBy = [ "timers.target" ];
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette) normal bright primary;
|
||||
};
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
home.file.".Xresources" = {
|
||||
|
|
@ -30,8 +30,8 @@ in
|
|||
*.color14: ${strPalette.bright.cyan}
|
||||
*.color15: ${strPalette.bright.white}
|
||||
|
||||
xterm*faceName: ${pkgs.rice.font.monospace.name}
|
||||
xterm*faceSize: ${toString pkgs.rice.font.monospace.size}
|
||||
xterm*faceName: ${rice.font.monospace.name}
|
||||
xterm*faceSize: ${toString rice.font.monospace.size}
|
||||
'';
|
||||
onChange = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources ";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
package = pkgs.unstable_pkgs.yazi;
|
||||
settings = {
|
||||
manager = {
|
||||
sort_by = "natural";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.zathura = {
|
||||
|
|
@ -11,7 +13,7 @@ in
|
|||
options = {
|
||||
# completion-bg = strPalette.bright.black;
|
||||
# default-bg = strPalette.normal.black;
|
||||
font = "${pkgs.rice.font.normal.name} 10";
|
||||
font = "${rice.font.normal.name} 10";
|
||||
# inputbar-bg = strPalette.bright.black;
|
||||
# inputbar-fg = strPalette.normal.cyan;
|
||||
page-padding = 10;
|
||||
|
|
@ -59,6 +61,5 @@ in
|
|||
# recolor = true;
|
||||
recolor-keephue = true; # keep original color
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,10 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.zellij = {
|
||||
enable = true;
|
||||
package = pkgs.unstable_pkgs.zellij;
|
||||
};
|
||||
programs.zellij.enable = true;
|
||||
|
||||
home.shellAliases = {
|
||||
"ze" = "zellij";
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
{ pkgs
|
||||
, config
|
||||
{ config
|
||||
, lib
|
||||
, ...
|
||||
}:
|
||||
|
|
@ -26,7 +25,6 @@
|
|||
};
|
||||
|
||||
services.garage = {
|
||||
package = pkgs.unstable_pkgs.garage;
|
||||
enable = true;
|
||||
settings = {
|
||||
replication_mode = 1;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
# package = pkgs.unstable_pkgs.hyprland;
|
||||
# enableNvidiaPatches = builtins.elem "nvidia" config.services.xserver.videoDrivers; # removed in 24.x
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
self: super:
|
||||
with super.lib.nix-rice;
|
||||
{ pkgs, config, ... }:
|
||||
with config.nix-rice.lib;
|
||||
let
|
||||
theme = kitty-themes.getThemeByName "Nightfox";
|
||||
inherit (config.nix-rice) rice;
|
||||
in
|
||||
{
|
||||
rice = {
|
||||
nix-rice.config = {
|
||||
colorPalette = rec {
|
||||
normal = palette.defaultPalette // {
|
||||
black = theme.color0;
|
||||
|
|
@ -36,17 +37,26 @@ in
|
|||
font = {
|
||||
normal = {
|
||||
name = "Cantarell";
|
||||
package = self.cantarell-fonts;
|
||||
package = pkgs.cantarell-fonts;
|
||||
size = 10;
|
||||
};
|
||||
monospace = {
|
||||
name = "CaskaydiaCove Nerd Font";
|
||||
package = self.nerdfonts.override { fonts = [ "CascadiaCode" ]; };
|
||||
package = pkgs.nerdfonts.override { fonts = [ "CascadiaCode" ]; };
|
||||
# name = "FiraCode Nerd Font Mono";
|
||||
# package = self.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
||||
# package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
||||
size = 10;
|
||||
};
|
||||
};
|
||||
opacity = 0.95;
|
||||
};
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(_self: super: {
|
||||
wl-lockscreen = super.wl-lockscreen.override {
|
||||
strPalette = palette.toRgbaShortHex rice.colorPalette;
|
||||
font = rice.font.normal;
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
||||
|
|
@ -3,7 +3,6 @@
|
|||
, fetchFromGitHub
|
||||
, sddm
|
||||
, qt5
|
||||
,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "sddm-sugar-dark";
|
||||
|
|
@ -3,7 +3,6 @@
|
|||
, fetchFromGitHub
|
||||
, fira-mono
|
||||
, wallpaper ? null
|
||||
,
|
||||
}:
|
||||
with lib;
|
||||
stdenv.mkDerivation {
|
||||
|
|
@ -1,20 +1,14 @@
|
|||
{ lib
|
||||
, rice
|
||||
, roboto
|
||||
{ roboto
|
||||
, swaylock
|
||||
, writeScriptBin
|
||||
, font ? {
|
||||
package = roboto;
|
||||
name = "Roboto";
|
||||
}
|
||||
, wallpaper ? ../../wallpapers/n8ca4obsys991.png
|
||||
, palette ? rice.palette.palette { }
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
strPalette = lib.nix-rice.palette.toRgbaShortHex palette;
|
||||
in
|
||||
writeScriptBin "way-lockscreen" ''
|
||||
, font ? { package = roboto; name = "Roboto"; size = 10; }
|
||||
, strPalette ? {
|
||||
primary.background = "000000ff";
|
||||
normal = { red = "ff0000ff"; green = "00ff00ff"; black = "000000ff"; };
|
||||
bright = { red = "ff1010ff"; green = "10ff10ff"; blue = "1010ffff"; };
|
||||
}
|
||||
}: writeScriptBin "wl-lockscreen" ''
|
||||
# Using font package ${font.package}
|
||||
${swaylock}/bin/swaylock \
|
||||
--color "${strPalette.primary.background}" \
|
||||
16
pkgs/wl-update-background/default.nix
Normal file
16
pkgs/wl-update-background/default.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{ findutils
|
||||
, gnugrep
|
||||
, coreutils
|
||||
, writeShellScriptBin
|
||||
, swww
|
||||
, backgrounds_directory ? "$HOME/Immagini/Sfondi/1080+/1440+"
|
||||
}: writeShellScriptBin "wl-update-background" ''
|
||||
set -e
|
||||
if [ $# -eq 0 ]; then
|
||||
image=`${findutils}/bin/find ${backgrounds_directory} -type f | ${gnugrep}/bin/grep -v "/\." | ${coreutils}/bin/shuf -n 1`
|
||||
else
|
||||
image="$1"
|
||||
fi
|
||||
echo "image: $image"
|
||||
${swww}/bin/swww img "$image"
|
||||
''
|
||||
Loading…
Add table
Add a link
Reference in a new issue