Compare commits

..

No commits in common. "804a660827fd6f27af255383eb3b0839e5cf54f0" and "814323a3740ed3f60edbd49ee7fd14a2e1793483" have entirely different histories.

325 changed files with 6939 additions and 7477 deletions

View file

@ -1 +0,0 @@
/nix/store/0nibh6zrkxhh7qc1q6kkq5810iqd0059-pre-commit-config.json

806
flake.lock generated

File diff suppressed because it is too large Load diff

1112
flake.nix

File diff suppressed because it is too large Load diff

View file

@ -1,51 +1,51 @@
{self, ...}: { {self, ...}: {
imports = [ imports = [
"${self}/hand7s/fonts/fonts.nix" "${self}/hand7s/fonts/fonts.nix"
"${self}/hand7s/options/gui.nix" "${self}/hand7s/options/gui.nix"
"${self}/hand7s/wayland/hyprland.nix" "${self}/hand7s/wayland/hyprland.nix"
"${self}/hand7s/wayland/river.nix" "${self}/hand7s/wayland/river.nix"
"${self}/hand7s/wayland/sway.nix" "${self}/hand7s/wayland/sway.nix"
"${self}/hand7s/home/defaults.nix" "${self}/hand7s/home/defaults.nix"
"${self}/hand7s/home/gui.nix" "${self}/hand7s/home/gui.nix"
"${self}/hand7s/home/keyboard.nix" "${self}/hand7s/home/keyboard.nix"
"${self}/hand7s/home/packages.nix" "${self}/hand7s/home/packages.nix"
"${self}/hand7s/home/shellAliases.nix" "${self}/hand7s/home/shellAliases.nix"
"${self}/hand7s/nixpkgs/config.nix" "${self}/hand7s/nixpkgs/config.nix"
"${self}/hand7s/nixpkgs/overlays.nix" "${self}/hand7s/nixpkgs/overlays.nix"
"${self}/hand7s/services/hypridle.nix" "${self}/hand7s/services/hypridle.nix"
"${self}/hand7s/services/swayidle.nix" "${self}/hand7s/services/swayidle.nix"
"${self}/hand7s/services/kdeconnect.nix" "${self}/hand7s/services/kdeconnect.nix"
"${self}/hand7s/systemd/hyprpolkitagent-service.nix" "${self}/hand7s/systemd/hyprpolkitagent-service.nix"
"${self}/hand7s/programs/bat.nix" "${self}/hand7s/programs/bat.nix"
"${self}/hand7s/programs/eza.nix" "${self}/hand7s/programs/eza.nix"
"${self}/hand7s/programs/fish.nix" "${self}/hand7s/programs/fish.nix"
"${self}/hand7s/programs/fzf.nix" "${self}/hand7s/programs/fzf.nix"
"${self}/hand7s/programs/ghostty.nix" "${self}/hand7s/programs/ghostty.nix"
"${self}/hand7s/programs/git.nix" "${self}/hand7s/programs/git.nix"
"${self}/hand7s/programs/mpv.nix" "${self}/hand7s/programs/mpv.nix"
"${self}/hand7s/programs/helix.nix" "${self}/hand7s/programs/helix.nix"
"${self}/hand7s/programs/index.nix" "${self}/hand7s/programs/index.nix"
"${self}/hand7s/programs/obs-studio.nix" "${self}/hand7s/programs/obs-studio.nix"
"${self}/hand7s/programs/starship.nix" "${self}/hand7s/programs/starship.nix"
"${self}/hand7s/programs/firefox.nix" "${self}/hand7s/programs/firefox.nix"
"${self}/hand7s/programs/swaylock.nix" "${self}/hand7s/programs/swaylock.nix"
"${self}/hand7s/programs/yazi.nix" "${self}/hand7s/programs/yazi.nix"
"${self}/hand7s/programs/zoxide.nix" "${self}/hand7s/programs/zoxide.nix"
"${self}/hand7s/programs/chrome.nix" "${self}/hand7s/programs/chrome.nix"
"${self}/hand7s/programs/hyprlock.nix" "${self}/hand7s/programs/hyprlock.nix"
"${self}/hand7s/programs/hyprpanel.nix" "${self}/hand7s/programs/hyprpanel.nix"
"${self}/hand7s/programs/spicetify.nix" "${self}/hand7s/programs/spicetify.nix"
"${self}/hand7s/programs/vscode.nix" "${self}/hand7s/programs/vscode.nix"
"${self}/hand7s/programs/zellij.nix" "${self}/hand7s/programs/zellij.nix"
"${self}/hand7s/programs/zed-editor.nix" "${self}/hand7s/programs/zed-editor.nix"
"${self}/hand7s/programs/direnv.nix" "${self}/hand7s/programs/direnv.nix"
"${self}/hand7s/programs/kitty.nix" "${self}/hand7s/programs/kitty.nix"
"${self}/hand7s/programs/noctalia.nix" "${self}/hand7s/programs/noctalia.nix"
]; ];
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
fonts = { fonts = {
fontconfig = { fontconfig = {
enable = true; enable = true;
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
gtk = { gtk = {
enable = true; enable = true;
}; };
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
home = { home = {
stateVersion = "24.11"; stateVersion = "24.11";
username = "hand7s"; username = "hand7s";
homeDirectory = "/home/hand7s"; homeDirectory = "/home/hand7s";
}; };
} }

View file

@ -1,33 +1,32 @@
{ {
osConfig, osConfig,
lib, lib,
... ...
}: { }: {
home = { home = {
gui = { gui = {
enable = enable = lib.mkIf (
lib.mkIf ( osConfig.networking.hostName == "s0mePC-nix" || osConfig.networking.hostName == "s0melapt0p-nix"
osConfig.networking.hostName == "s0mePC-nix" || osConfig.networking.hostName == "s0melapt0p-nix" )
) true;
true;
sessionType = sessionType =
if if
( (
osConfig.networking.hostName == "s0mePC-nix" osConfig.networking.hostName == "s0mePC-nix"
) )
then "Hyprland" then "Hyprland"
else if else if
( (
osConfig.networking.hostName == "s0mew0rkstat1on-nix" osConfig.networking.hostName == "s0mew0rkstat1on-nix"
) )
then "Hyprland" then "Hyprland"
else if else if
( (
osConfig.networking.hostName == "s0melapt0p-nix" osConfig.networking.hostName == "s0melapt0p-nix"
) )
then "Sway" then "Sway"
else "None"; else "None";
};
}; };
};
} }

View file

@ -1,11 +1,11 @@
{...}: { {...}: {
home = { home = {
keyboard = { keyboard = {
variant = ""; variant = "";
layout = "us, ru"; layout = "us, ru";
options = [ options = [
"grp:caps_toggle" "grp:caps_toggle"
]; ];
};
}; };
};
} }

View file

@ -1,62 +1,62 @@
{ {
osConfig, osConfig,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
home = { home = {
packages = with pkgs; packages = with pkgs;
[ [
fd fd
gh gh
sd sd
xh xh
dua dua
nvd nvd
gat gat
dust dust
sops sops
rsync rsync
procs procs
sbctl sbctl
gping gping
dconf dconf
tokei tokei
comma comma
ifuse ifuse
trippy trippy
bottom bottom
kubectl kubectl
yt-dlp yt-dlp
ripgrep ripgrep
gitoxide gitoxide
tty-clock tty-clock
deploy-rs deploy-rs
monero-cli monero-cli
nixos-anywhere nixos-anywhere
wireguard-tools wireguard-tools
yubico-piv-tool yubico-piv-tool
yubikey-manager yubikey-manager
libimobiledevice libimobiledevice
nix-output-monitor nix-output-monitor
yubikey-touch-detector yubikey-touch-detector
yubikey-personalization yubikey-personalization
netbird-ui netbird-ui
] ]
++ lib.optionals ( ++ lib.optionals (
osConfig.networking.hostName == "s0mePC-nix" osConfig.networking.hostName == "s0mePC-nix"
) [ ) [
mindustry mindustry
thunderbird thunderbird
tetrio-desktop tetrio-desktop
min-ed-launcher min-ed-launcher
qbittorrent-enhanced qbittorrent-enhanced
] ]
++ lib.optionals ( ++ lib.optionals (
osConfig.networking.hostName == "s0melapt0p-nix" osConfig.networking.hostName == "s0melapt0p-nix"
) [ ) [
iwgtk iwgtk
brightnessctl brightnessctl
]; ];
}; };
} }

View file

@ -1,13 +1,13 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
home = { home = {
shellAliases = { shellAliases = {
e = "${lib.getExe pkgs.eza}"; e = "${lib.getExe pkgs.eza}";
et = "${lib.getExe pkgs.eza} -T"; et = "${lib.getExe pkgs.eza} -T";
k = "${lib.getExe pkgs.kubectl}"; k = "${lib.getExe pkgs.kubectl}";
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{pkgs, ...}: { {pkgs, ...}: {
nix = { nix = {
package = pkgs.nixVersions.latest; package = pkgs.nixVersions.latest;
}; };
} }

View file

@ -1,18 +1,18 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
substituters = [ substituters = [
# cache.nixos.org # cache.nixos.org
"https://cache.nixos.org" "https://cache.nixos.org"
# cache.garnix.org # cache.garnix.org
"https://cache.garnix.io" "https://cache.garnix.io"
# cachix # cachix
"https://nix-community.cachix.org/" "https://nix-community.cachix.org/"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
"https://ags.cachix.org" "https://ags.cachix.org"
"https://hyprland.cachix.org" "https://hyprland.cachix.org"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
]; ];
};
}; };
};
} }

View file

@ -1,18 +1,18 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
trusted-public-keys = [ trusted-public-keys = [
# cache.nixos.org # cache.nixos.org
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
# cache.garnix.io # cache.garnix.io
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g=" "cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
# cachix.org # cachix.org
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
"ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8=" "ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
]; ];
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
nixpkgs = { nixpkgs = {
config = { config = {
allowBroken = true; allowBroken = true;
allowUnfree = true; allowUnfree = true;
};
}; };
};
} }

View file

@ -1,6 +1,6 @@
{...}: { {...}: {
nixpkgs = { nixpkgs = {
overlays = [ overlays = [
]; ];
}; };
} }

View file

@ -1,108 +1,108 @@
{ {
lib, lib,
pkgs, pkgs,
config, config,
inputs, inputs,
... ...
}: let }: let
cfg = config.home.gui; cfg = config.home.gui;
ayugram = inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop; ayugram = inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop;
freesm-launcher = inputs.freesm.packages.${pkgs.system}.freesmlauncher; freesm-launcher = inputs.freesm.packages.${pkgs.system}.freesmlauncher;
in { in {
options.home.gui = { options.home.gui = {
enable = lib.mkEnableOption '' enable = lib.mkEnableOption ''
Enabling this option will allow you to activate GUI Software, Enabling this option will allow you to activate GUI Software,
that exist in my home-manager setup. Enabling this, as you can that exist in my home-manager setup. Enabling this, as you can
see, is depending on hostname of my system. To bypass this, see, is depending on hostname of my system. To bypass this,
either delete expression in `home.nix`, or change hostname either delete expression in `home.nix`, or change hostname
to yours. to yours.
''; '';
sessionType = lib.mkOption { sessionType = lib.mkOption {
type = lib.types.enum [ type = lib.types.enum [
"DWL" "DWL"
"Sway" "Sway"
"River" "River"
"Hyprland" "Hyprland"
"None" "None"
]; ];
default = "None"; default = "None";
description = '' description = ''
This option allows to choose current desktop session. All This option allows to choose current desktop session. All
three: riverwm, sway and Hyprland has their own config. Almost three: riverwm, sway and Hyprland has their own config. Almost
all of them - their respectful software. WIP. all of them - their respectful software. WIP.
''; '';
}; };
};
config = lib.mkIf cfg.enable {
home = {
packages = with pkgs;
[
vesktop
nekoray
anki-bin
obsidian
playerctl
monero-gui
mindustry
bitwarden
lan-mouse
parsec-bin
pwvucontrol
easyeffects
ayugram
element-desktop
hyprpolkitagent
freesm-launcher
(discord.override {
withVencord = true;
withOpenASAR = false;
})
]
++ lib.optionals (
cfg.sessionType == "Sway"
) [
swaykbdd
autotiling-rs
sway-audio-idle-inhibit
sway-contrib.grimshot
sway-contrib.inactive-windows-transparency
]
++ lib.optionals (
cfg.sessionType == "River"
) [
wayshot
waylock
wayidle
]
++ lib.optionals (
cfg.sessionType == "Hyprland"
) [
inputs.noctalia.packages.${system}.default
grimblast
];
}; };
programs = { config = lib.mkIf cfg.enable {
chromium.enable = true; home = {
spicetify.enable = true; packages = with pkgs;
vscode.enable = true; [
fuzzel.enable = true; vesktop
ghostty.enable = true; nekoray
firefox.enable = true; anki-bin
alacritty.enable = true; obsidian
playerctl
monero-gui
mindustry
bitwarden
lan-mouse
parsec-bin
pwvucontrol
easyeffects
ayugram
element-desktop
hyprpolkitagent
freesm-launcher
(discord.override {
withVencord = true;
withOpenASAR = false;
})
]
++ lib.optionals (
cfg.sessionType == "Sway"
) [
swaykbdd
autotiling-rs
sway-audio-idle-inhibit
sway-contrib.grimshot
sway-contrib.inactive-windows-transparency
]
++ lib.optionals (
cfg.sessionType == "River"
) [
wayshot
waylock
wayidle
]
++ lib.optionals (
cfg.sessionType == "Hyprland"
) [
inputs.noctalia.packages.${system}.default
grimblast
];
};
programs = {
chromium.enable = true;
spicetify.enable = true;
vscode.enable = true;
fuzzel.enable = true;
ghostty.enable = true;
firefox.enable = true;
alacritty.enable = true;
};
services = with lib.mkDefault; {
hyprpaper.enable = true;
kdeconnect.enable = true;
};
}; };
services = with lib.mkDefault; { meta.maintainers = with lib.maintainers; [
hyprpaper.enable = true; s0me1newithhan7ds
kdeconnect.enable = true; # aka hand7s
}; ];
};
meta.maintainers = with lib.maintainers; [
s0me1newithhan7ds
# aka hand7s
];
} }

View file

@ -1,14 +1,14 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
bat = { bat = {
enable = true; enable = true;
config = { config = {
pager = "${lib.getExe pkgs.less} -FR"; pager = "${lib.getExe pkgs.less} -FR";
}; };
};
}; };
};
} }

View file

@ -1,14 +1,14 @@
{pkgs, ...}: { {pkgs, ...}: {
programs = { programs = {
chromium = { chromium = {
package = pkgs.google-chrome.override { package = pkgs.google-chrome.override {
commandLineArgs = [ commandLineArgs = [
"--enable-features=AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo,SkiaGraphite" "--enable-features=AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo,SkiaGraphite"
"--enable-unsafe-webgpu" "--enable-unsafe-webgpu"
"--ignore-gpu-blocklist" "--ignore-gpu-blocklist"
"--enable-zero-copy" "--enable-zero-copy"
]; ];
}; };
};
}; };
};
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
programs = { programs = {
direnv = { direnv = {
enable = true; enable = true;
nix-direnv = { nix-direnv = {
enable = true; enable = true;
}; };
};
}; };
};
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
programs = { programs = {
eza = { eza = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
git = true; git = true;
icons = "always"; icons = "always";
};
}; };
};
} }

View file

@ -1,16 +1,16 @@
{ {
inputs, inputs,
pkgs, pkgs,
... ...
}: let }: let
zen-browser = inputs.zen-browser.packages.${pkgs.system}.default; zen-browser = inputs.zen-browser.packages.${pkgs.system}.default;
in { in {
programs = { programs = {
firefox = { firefox = {
package = zen-browser; package = zen-browser;
profiles = rec { profiles = rec {
default = { default = {
userContent = " userContent = "
--zen-colors-primary: #82aaff !important; --zen-colors-primary: #82aaff !important;
--zen-colors-secondary: #c099ff !important; --zen-colors-secondary: #c099ff !important;
--zen-colors-tertiary: #1e2030 !important; --zen-colors-tertiary: #1e2030 !important;
@ -21,8 +21,8 @@ in {
background-color: #6c598c !important; background-color: #6c598c !important;
} }
"; ";
};
};
}; };
};
}; };
};
} }

View file

@ -1,17 +1,17 @@
{ {
lib, lib,
pkgs, pkgs,
... ...
}: { }: {
programs = { programs = {
fish = { fish = {
enable = true; enable = true;
generateCompletions = true; generateCompletions = true;
functions = { functions = {
fish_greeting = { fish_greeting = {
body = "${lib.getExe' pkgs.uutils-coreutils-noprefix "echo"} ' ~ 𝑠𝑛𝑜𝑤𝑦 𝑝𝑙𝑎𝑐𝑒, 𝑓𝑢𝑙𝑙 𝑜𝑓 𝑓𝑙𝑎𝑘𝑒𝑠! '"; body = "${lib.getExe' pkgs.uutils-coreutils-noprefix "echo"} ' ~ 𝑠𝑛𝑜𝑤𝑦 𝑝𝑙𝑎𝑐𝑒, 𝑓𝑢𝑙𝑙 𝑜𝑓 𝑓𝑙𝑎𝑘𝑒𝑠! '";
};
};
}; };
};
}; };
};
} }

View file

@ -1,11 +1,11 @@
{...}: { {...}: {
programs = { programs = {
fzf = { fzf = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
tmux = { tmux = {
enableShellIntegration = true; enableShellIntegration = true;
}; };
};
}; };
};
} }

View file

@ -1,24 +1,24 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
ghostty = { ghostty = {
enableFishIntegration = true; enableFishIntegration = true;
installBatSyntax = true; installBatSyntax = true;
settings = { settings = {
title = "spooky scary tty"; title = "spooky scary tty";
command = "${lib.getExe pkgs.fish} --login --interactive"; command = "${lib.getExe pkgs.fish} --login --interactive";
confirm-close-surface = false; confirm-close-surface = false;
keybind = [ keybind = [
"ctrl+shift+d=new_split:right" "ctrl+shift+d=new_split:right"
"ctrl+shift+a=new_split:down" "ctrl+shift+a=new_split:down"
]; ];
}; };
};
}; };
};
} }

View file

@ -1,28 +1,28 @@
{ {
pkgs, pkgs,
osConfig, osConfig,
... ...
}: { }: {
programs = { programs = {
git = { git = {
enable = true; enable = true;
package = pkgs.git; package = pkgs.git;
userEmail = "117505144+s0me1newithhand7s@users.noreply.github.com"; userEmail = "117505144+s0me1newithhand7s@users.noreply.github.com";
userName = "s0me1newithhand7s"; userName = "s0me1newithhand7s";
aliases = { aliases = {
pushall = "push github && push gitlab"; pushall = "push github && push gitlab";
pushall-f = "push --force github && push --force gitlab"; pushall-f = "push --force github && push --force gitlab";
}; };
signing = { signing = {
format = "ssh"; format = "ssh";
signByDefault = true; signByDefault = true;
key = osConfig.sops.secrets.sshKey.path; key = osConfig.sops.secrets.sshKey.path;
}; };
lfs = { lfs = {
enable = true; enable = true;
}; };
};
}; };
};
} }

View file

@ -1,64 +1,64 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
helix = { helix = {
package = pkgs.helix_git; package = pkgs.helix_git;
enable = true; enable = true;
defaultEditor = true; defaultEditor = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [
nixd nixd
];
settings = {
editor = {
line-number = "relative";
cursorline = true;
lsp = {
display-messages = true;
};
};
};
languages = {
language-servers = {
nixd = {
command = "${lib.getExe pkgs.nixd}";
args = [
"--inlay-hints=true"
]; ];
};
};
language = [ settings = {
{ editor = {
name = "nix"; line-number = "relative";
comment-token = "#"; cursorline = true;
injection-regex = "nix"; lsp = {
indent = { display-messages = true;
tab-width = 4; };
unit = " "; };
}; };
formatter = { languages = {
command = "${lib.getExe pkgs.nix}"; language-servers = {
args = [ nixd = {
"fmt" command = "${lib.getExe pkgs.nixd}";
]; args = [
"--inlay-hints=true"
];
};
};
language = [
{
name = "nix";
comment-token = "#";
injection-regex = "nix";
indent = {
tab-width = 4;
unit = " ";
};
formatter = {
command = "${lib.getExe pkgs.nix}";
args = [
"fmt"
];
};
file-types = [
"nix"
];
language-servers = [
"nixd"
];
}
];
}; };
};
file-types = [
"nix"
];
language-servers = [
"nixd"
];
}
];
};
}; };
};
} }

View file

@ -1,96 +1,95 @@
{ {
config, config,
lib, lib,
... ...
}: { }: {
programs = { programs = {
hyprlock = { hyprlock = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Hyprland"
config.home.gui.sessionType == "Hyprland" )
) true;
true;
settings = { settings = {
general = { general = {
hide_cursor = true; hide_cursor = true;
ignore_empty_input = true; ignore_empty_input = true;
};
label = [
{
monitor = "";
text = "$TIME";
text_align = "center";
color = config.lib.stylix.colors.base01;
font_size = 48;
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "0, 50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 2;
shadow_color = "rgba(38, 3, 4, 1)";
shadow_boost = 2;
}
{
monitor = "";
text = "> $LAYOUT[en,ru]";
text_align = "center";
color = config.lib.stylix.colors.base06;
font_size = 26;
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "200, -50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 2;
shadow_color = "rgba(38, 3, 4, 1)";
shadow_boost = 2;
}
];
input-field = lib.mkForce [
{
monitor = "";
size = "250, 50";
outline_thickness = 2;
dots_size = 0.35;
dots_spacing = 0.5;
dots_center = true;
dots_rounding = -2;
fade_on_empty = false;
fade_timeout = 0;
placeholder_text = " ";
hide_input = false;
rounding = -0.3;
fail_text = "<i>$FAIL <b>($ATTEMPTS)</b></i>";
fail_transition = 1000;
capslock_color = -1;
numlock_color = -1;
bothlock_color = -1;
invert_numlock = false;
swap_font_color = false;
position = "0, -50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 5;
shadow_boost = 1;
}
];
};
}; };
label = [
{
monitor = "";
text = "$TIME";
text_align = "center";
color = config.lib.stylix.colors.base01;
font_size = 48;
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "0, 50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 2;
shadow_color = "rgba(38, 3, 4, 1)";
shadow_boost = 2;
}
{
monitor = "";
text = "> $LAYOUT[en,ru]";
text_align = "center";
color = config.lib.stylix.colors.base06;
font_size = 26;
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "200, -50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 2;
shadow_color = "rgba(38, 3, 4, 1)";
shadow_boost = 2;
}
];
input-field = lib.mkForce [
{
monitor = "";
size = "250, 50";
outline_thickness = 2;
dots_size = 0.35;
dots_spacing = 0.5;
dots_center = true;
dots_rounding = -2;
fade_on_empty = false;
fade_timeout = 0;
placeholder_text = " ";
hide_input = false;
rounding = -0.3;
fail_text = "<i>$FAIL <b>($ATTEMPTS)</b></i>";
fail_transition = 1000;
capslock_color = -1;
numlock_color = -1;
bothlock_color = -1;
invert_numlock = false;
swap_font_color = false;
position = "0, -50";
halign = "center";
valign = "center";
shadow_passes = 1;
shadow_size = 5;
shadow_boost = 1;
}
];
};
}; };
};
} }

View file

@ -1,440 +1,440 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
hyprpanel = {
enable = false;
settings = {
layout = {
"bar.layouts" = {
"*" = {
left = [
"dashboard"
"workspaces"
"media"
];
middle = [
"clock"
"power"
];
right = [
"network"
"kbinput"
"volume"
"systray"
"notifications"
];
};
};
};
scalingPriority = "hyprland";
tear = false;
dummy = true;
hyprpanel = { hyprpanel = {
restartAgs = true; enable = false;
restartCommand = "${lib.getExe' pkgs.systemd "systemctl"} --user restart hyprpanel.service";
};
bar = { settings = {
autoHide = "never"; layout = {
scrollSpeed = 5; "bar.layouts" = {
"*" = {
left = [
"dashboard"
"workspaces"
"media"
];
battery = { middle = [
hideLabelWhenFull = true; "clock"
label = true; "power"
}; ];
bluetooth = { right = [
label = true; "network"
}; "kbinput"
"volume"
clock = { "systray"
format = "%a, %b %d %I:%M:%S %p"; "notifications"
icon = "󰸗"; ];
showIcon = true; };
showTime = true; };
};
launcher = {
icon = " ";
autoDetectIcon = true;
};
media = {
format = "{artist: - }{title}";
show_active_only = true;
show_label = true;
truncation = true;
truncation_size = 30;
};
network = {
label = true;
showWifiInfo = true;
truncation = true;
truncation_size = 10;
};
notifications = {
show_total = false;
hideCountWhenZero = true;
};
volume = {
label = true;
scrollDown = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-";
scrollUp = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+";
rightClick = "${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle";
};
windowtitle = {
icon = true;
label = true;
class_name = false;
custom_title = true;
truncation = true;
truncation_size = 50;
};
workspaces = {
show_icons = false;
show_numbered = false;
showApplicationIcons = true;
showAllActive = true;
showWsIcons = true;
numbered_active_indicator = "highlight";
workspaces = 20;
monitorSpecific = true;
reverse_scroll = false;
scroll_speed = 5;
spacing = 1.0;
workspaceMask = true;
ignored = "";
applicationIconEmptyWorkspace = "";
applicationIconFallback = "󰣆";
icons = {
active = "";
available = "";
occupied = "";
};
};
customModules = {
scrollSpeed = 5;
cava = {
showIcon = true;
icon = "";
spaceCharacter = "";
showActiveOnly = true;
stereo = false;
autoSensitivity = true;
bars = 10;
channels = 2;
framerate = 165;
samplerate = 48000;
lowCutoff = 20;
highCutoff = 20000;
barCharacters = [
""
""
""
""
""
""
""
""
];
};
cpu = {
icon = "";
label = true;
round = true;
pollingInterval = 1000;
};
cpuTemp = {
icon = "";
label = true;
pollingInterval = 500;
round = true;
showUnit = true;
sensor = "";
};
hypridle = {
label = true;
pollingInterval = 500;
offIcon = "";
offLabel = "OFF";
onIcon = "";
onLabel = "ON";
};
hyprsunset = {
label = true;
pollingInterval = 500;
offIcon = "󰛨";
offLabel = "OFF";
onIcon = "󱩌";
onLabel = "ON";
};
kbLayout = {
icon = "󰌌";
label = true;
labelType = "code";
rightClick = "${lib.getExe' pkgs.hyprland "hyprctl"} switchxkblayout monsgeek-monsgeek-keyboard next";
};
netstat = {
icon = "󰖟";
label = true;
pollingInterval = 250;
dynamicIcon = true;
round = true;
rateUnit = "auto";
networkInLabel = "";
networkOutLabel = "";
};
power = {
icon = "";
showLabel = true;
leftClick = "menu:powerdropdown";
};
microphone = {
label = true;
mutedIcon = "";
unmutedIcon = "";
leftClick = "menu:audio";
};
ram = {
icon = "";
label = true;
labelType = "percentage";
pollingInterval = 250;
round = true;
};
storage = {
icon = "󰋊";
label = true;
labelType = "percentage";
pollingInterval = 2000;
round = false;
};
submap = {
label = true;
showSubmapName = true;
enabledIcon = "󰌐";
enabledText = "ON";
disabledIcon = "󰌌";
disabledText = "OFF";
};
updates = {
label = true;
autoHide = true;
padZero = true;
pollingInterval = 1440000;
updateCommand = "nix flake update --flake ~/Projects/flake";
icon = {
pending = "󰏗";
updated = "󰏖";
};
};
weather = {
label = true;
unit = "metric";
};
};
};
menus = {
transition = "crossfade";
transitionTime = 200;
clock = {
time = {
military = false;
hideSeconds = true;
};
weather = {
enabled = true;
location = "Yelabuga";
unit = "metric";
key = "ac3df6535cac4448a4c83337252702";
};
};
dashboard = {
shortcuts = {
left = {
shortcut1 = {
command = "${lib.getExe pkgs.google-chrome}";
icon = "";
tooltip = "Google Chrome";
}; };
shortcut2 = { scalingPriority = "hyprland";
command = "spotify";
icon = ""; tear = false;
tooltip = "Spotify"; dummy = true;
hyprpanel = {
restartAgs = true;
restartCommand = "${lib.getExe' pkgs.systemd "systemctl"} --user restart hyprpanel.service";
}; };
shortcut3 = { bar = {
command = "${lib.getExe pkgs.discord}"; autoHide = "never";
icon = ""; scrollSpeed = 5;
tooltip = "Discord";
battery = {
hideLabelWhenFull = true;
label = true;
};
bluetooth = {
label = true;
};
clock = {
format = "%a, %b %d %I:%M:%S %p";
icon = "󰸗";
showIcon = true;
showTime = true;
};
launcher = {
icon = " ";
autoDetectIcon = true;
};
media = {
format = "{artist: - }{title}";
show_active_only = true;
show_label = true;
truncation = true;
truncation_size = 30;
};
network = {
label = true;
showWifiInfo = true;
truncation = true;
truncation_size = 10;
};
notifications = {
show_total = false;
hideCountWhenZero = true;
};
volume = {
label = true;
scrollDown = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-";
scrollUp = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+";
rightClick = "${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle";
};
windowtitle = {
icon = true;
label = true;
class_name = false;
custom_title = true;
truncation = true;
truncation_size = 50;
};
workspaces = {
show_icons = false;
show_numbered = false;
showApplicationIcons = true;
showAllActive = true;
showWsIcons = true;
numbered_active_indicator = "highlight";
workspaces = 20;
monitorSpecific = true;
reverse_scroll = false;
scroll_speed = 5;
spacing = 1.0;
workspaceMask = true;
ignored = "";
applicationIconEmptyWorkspace = "";
applicationIconFallback = "󰣆";
icons = {
active = "";
available = "";
occupied = "";
};
};
customModules = {
scrollSpeed = 5;
cava = {
showIcon = true;
icon = "";
spaceCharacter = "";
showActiveOnly = true;
stereo = false;
autoSensitivity = true;
bars = 10;
channels = 2;
framerate = 165;
samplerate = 48000;
lowCutoff = 20;
highCutoff = 20000;
barCharacters = [
""
""
""
""
""
""
""
""
];
};
cpu = {
icon = "";
label = true;
round = true;
pollingInterval = 1000;
};
cpuTemp = {
icon = "";
label = true;
pollingInterval = 500;
round = true;
showUnit = true;
sensor = "";
};
hypridle = {
label = true;
pollingInterval = 500;
offIcon = "";
offLabel = "OFF";
onIcon = "";
onLabel = "ON";
};
hyprsunset = {
label = true;
pollingInterval = 500;
offIcon = "󰛨";
offLabel = "OFF";
onIcon = "󱩌";
onLabel = "ON";
};
kbLayout = {
icon = "󰌌";
label = true;
labelType = "code";
rightClick = "${lib.getExe' pkgs.hyprland "hyprctl"} switchxkblayout monsgeek-monsgeek-keyboard next";
};
netstat = {
icon = "󰖟";
label = true;
pollingInterval = 250;
dynamicIcon = true;
round = true;
rateUnit = "auto";
networkInLabel = "";
networkOutLabel = "";
};
power = {
icon = "";
showLabel = true;
leftClick = "menu:powerdropdown";
};
microphone = {
label = true;
mutedIcon = "";
unmutedIcon = "";
leftClick = "menu:audio";
};
ram = {
icon = "";
label = true;
labelType = "percentage";
pollingInterval = 250;
round = true;
};
storage = {
icon = "󰋊";
label = true;
labelType = "percentage";
pollingInterval = 2000;
round = false;
};
submap = {
label = true;
showSubmapName = true;
enabledIcon = "󰌐";
enabledText = "ON";
disabledIcon = "󰌌";
disabledText = "OFF";
};
updates = {
label = true;
autoHide = true;
padZero = true;
pollingInterval = 1440000;
updateCommand = "nix flake update --flake ~/Projects/flake";
icon = {
pending = "󰏗";
updated = "󰏖";
};
};
weather = {
label = true;
unit = "metric";
};
};
}; };
shortcut4 = { menus = {
command = "ayugram-desktop"; transition = "crossfade";
icon = ""; transitionTime = 200;
tooltip = "Telegram";
};
};
right = { clock = {
shortcut1 = { time = {
command = "${lib.getExe pkgs.fuzzel}"; military = false;
icon = ""; hideSeconds = true;
tooltip = "Search"; };
weather = {
enabled = true;
location = "Yelabuga";
unit = "metric";
key = "ac3df6535cac4448a4c83337252702";
};
};
dashboard = {
shortcuts = {
left = {
shortcut1 = {
command = "${lib.getExe pkgs.google-chrome}";
icon = "";
tooltip = "Google Chrome";
};
shortcut2 = {
command = "spotify";
icon = "";
tooltip = "Spotify";
};
shortcut3 = {
command = "${lib.getExe pkgs.discord}";
icon = "";
tooltip = "Discord";
};
shortcut4 = {
command = "ayugram-desktop";
icon = "";
tooltip = "Telegram";
};
};
right = {
shortcut1 = {
command = "${lib.getExe pkgs.fuzzel}";
icon = "";
tooltip = "Search";
};
shortcut3 = {
command = "${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png";
icon = "󰄀";
tooltip = "Screenshot";
};
};
};
stats = {
enable_gpu = false;
enabled = true;
interval = 1000;
};
directories = {
enabled = true;
};
powermenu = {
avatar = {
image = "/home/hand7s/Pictures/pfp4_mini.jpg";
name = "system";
};
};
};
media = {
displayTime = true;
displayTimeTooltip = true;
noMediaText = "-";
hideAlbum = false;
hideAuthor = false;
};
power = {
confirmation = true;
showLabel = true;
logout = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch exit";
reboot = "${lib.getExe' pkgs.systemd "systemctl"} reboot";
shutdown = "${lib.getExe' pkgs.systemd "systemctl"} poweroff";
sleep = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
};
volume = {
raiseMaximumVolume = false;
};
}; };
shortcut3 = { notifications = {
command = "${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png"; active_monitor = true;
icon = "󰄀"; cache_actions = true;
tooltip = "Screenshot"; clearDelay = 50;
displayedTotal = 5;
showActionsOnHover = true;
timeout = 5000;
};
theme = {
matugen = false;
name = "tokyo-night-vivid";
font = {
name = "Hack Font Nerd Regular";
size = "16px";
weight = 600;
};
bar = {
transparent = false;
floating = true;
layer = "top";
location = "top";
margin_bottom = "0";
margin_sides = "20px";
margin_top = "20px";
border_radius = "10px";
border = {
location = "full";
width = "2px";
};
buttons = {
enableBorders = false;
monochrome = false;
style = "default";
};
};
osd = {
enable = true;
active_monitor = true;
duration = 2500;
location = "right";
margins = "5px 5px 5px 5px";
muted_zero = false;
radius = "10px";
};
};
wallpaper = {
enable = false;
pywal = false;
image = "";
}; };
};
}; };
stats = {
enable_gpu = false;
enabled = true;
interval = 1000;
};
directories = {
enabled = true;
};
powermenu = {
avatar = {
image = "/home/hand7s/Pictures/pfp4_mini.jpg";
name = "system";
};
};
};
media = {
displayTime = true;
displayTimeTooltip = true;
noMediaText = "-";
hideAlbum = false;
hideAuthor = false;
};
power = {
confirmation = true;
showLabel = true;
logout = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch exit";
reboot = "${lib.getExe' pkgs.systemd "systemctl"} reboot";
shutdown = "${lib.getExe' pkgs.systemd "systemctl"} poweroff";
sleep = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
};
volume = {
raiseMaximumVolume = false;
};
}; };
notifications = {
active_monitor = true;
cache_actions = true;
clearDelay = 50;
displayedTotal = 5;
showActionsOnHover = true;
timeout = 5000;
};
theme = {
matugen = false;
name = "tokyo-night-vivid";
font = {
name = "Hack Font Nerd Regular";
size = "16px";
weight = 600;
};
bar = {
transparent = false;
floating = true;
layer = "top";
location = "top";
margin_bottom = "0";
margin_sides = "20px";
margin_top = "20px";
border_radius = "10px";
border = {
location = "full";
width = "2px";
};
buttons = {
enableBorders = false;
monochrome = false;
style = "default";
};
};
osd = {
enable = true;
active_monitor = true;
duration = 2500;
location = "right";
margins = "5px 5px 5px 5px";
muted_zero = false;
radius = "10px";
};
};
wallpaper = {
enable = false;
pywal = false;
image = "";
};
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
programs = { programs = {
nix-index = { nix-index = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
};
}; };
};
} }

View file

@ -1,12 +1,12 @@
{...}: { {...}: {
programs = { programs = {
kitty = { kitty = {
enable = true; enable = true;
enableGitIntegration = true; enableGitIntegration = true;
shellIntegration = { shellIntegration = {
enableFishIntegration = true; enableFishIntegration = true;
}; };
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
programs = { programs = {
mangohud = { mangohud = {
enable = true; enable = true;
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
programs = { programs = {
mpv = { mpv = {
enable = true; enable = true;
};
}; };
};
} }

View file

@ -1,213 +1,213 @@
{config, ...}: { {config, ...}: {
programs = programs =
if if
( (
config.home.gui.sessionType == "Hyprland" config.home.gui.sessionType == "Hyprland"
) )
then { then {
noctalia-shell = { noctalia-shell = {
enable = true; enable = true;
settings = { settings = {
general = { general = {
avatarImage = "/home/hand7s/Pictures/pfp4_mini.jpg"; avatarImage = "/home/hand7s/Pictures/pfp4_mini.jpg";
animationDisabled = false; animationDisabled = false;
dimDesktop = false; dimDesktop = false;
forceBlackScreenCorners = true; forceBlackScreenCorners = true;
showScreenCorners = true; showScreenCorners = true;
screenRadiusRatio = 2; screenRadiusRatio = 2;
radiusRatio = 0.7; radiusRatio = 0.7;
}; };
appLauncher = { appLauncher = {
position = "center"; position = "center";
useApp2Unit = false; useApp2Unit = false;
sortByMostUsed = true; sortByMostUsed = true;
enableClipboardHistory = false; enableClipboardHistory = false;
terminalCommand = "ghostty -e"; terminalCommand = "ghostty -e";
}; };
audio = { audio = {
visualizerType = "mirrored"; visualizerType = "mirrored";
volumeOverdrive = true; volumeOverdrive = true;
cavaFrameRate = 165; cavaFrameRate = 165;
volumeStep = 5; volumeStep = 5;
}; };
bar = { bar = {
floating = true; floating = true;
density = "comfortable"; density = "comfortable";
position = "right"; position = "right";
showCapsule = false; showCapsule = false;
marginVertical = 1; marginVertical = 1;
marginHorizontal = 0.6; marginHorizontal = 0.6;
monitors = [ monitors = [
"DP-3" "DP-3"
]; ];
widgets = { widgets = {
left = [ left = [
{ {
id = "SidePanelToggle"; id = "SidePanelToggle";
useDistroLogo = true; useDistroLogo = true;
} }
{ {
id = "Workspace"; id = "Workspace";
hideUnoccupied = true; hideUnoccupied = true;
labelMode = "index"; labelMode = "index";
} }
{ {
id = "MediaMini"; id = "MediaMini";
autoHide = true; autoHide = true;
scrollingMode = "hover"; scrollingMode = "hover";
showAlbumArt = true; showAlbumArt = true;
showVisualizer = true; showVisualizer = true;
visualizerType = "mirrored"; visualizerType = "mirrored";
} }
]; ];
center = [ center = [
{ {
id = "Clock"; id = "Clock";
formatHorizontal = "HH:mm:ss"; formatHorizontal = "HH:mm:ss";
formatVertical = " HH mm ss"; formatVertical = " HH mm ss";
useMonospacedFont = true; useMonospacedFont = true;
usePrimaryColor = true; usePrimaryColor = true;
} }
]; ];
right = [ right = [
{ {
id = "KeyboardLayout"; id = "KeyboardLayout";
displayMode = "onhover"; displayMode = "onhover";
} }
{ {
id = "Microphone"; id = "Microphone";
displayMode = "onhover"; displayMode = "onhover";
} }
{ {
id = "Volume"; id = "Volume";
displayMode = "onhover"; displayMode = "onhover";
} }
{ {
id = "Spacer"; id = "Spacer";
} }
{ {
id = "Tray"; id = "Tray";
blacklist = []; blacklist = [];
colorizeIcons = true; colorizeIcons = true;
} }
{ {
id = "NotificationHistory"; id = "NotificationHistory";
hideWhenZero = false; hideWhenZero = false;
showUnreadBadge = true; showUnreadBadge = true;
} }
]; ];
};
};
controlCenter = {
position = "close_to_bar_button";
quickSettingsStyle = "compact";
widgets = {
quickSettings = [
{
id = "Notifications";
}
{
id = "ScreenRecorder";
}
{
id = "KeepAwake";
}
{
id = "NightLight";
}
];
};
};
dock = {
displayMode = "auto_hide";
floatingRatio = 1;
onlySameOutput = true;
colorizeIcons = true;
monitors = [
"DP-3"
];
};
colors = with config.lib.stylix.colors; {
mBackground = base00;
mSurface = base01;
mOverlay = base02;
mMuted = base03;
mBorder = base04;
mText = base05;
mTextAlt = base06;
mTextDim = base07;
mError = base08;
mWarning = base09;
mAccent = base0A;
mSuccess = base0B;
mCyan = base0C;
mPrimary = base0D;
mMagenta = base0E;
mOrange = base0F;
mOnBackground = base05;
mOnSurface = base05;
mOnPrimary = base00;
mOnError = base00;
};
colorSchemes = {
darkMode = true;
useWallpaperColors = false;
generateTemplatesForPredefined = false;
predefinedScheme = "Tokyo Night";
matugenSchemeType = "scheme-fruit-salad";
};
osd = {
enabled = true;
alwaysOnTop = true;
autoHideMs = 2500;
location = "top";
monitors = [
"DP-3"
];
};
ui = {
fontDefault = "Nerd Fonts Hack";
fontDefaultScale = 1;
fontFixed = "Nerd Fonts Hack";
fontFixedScale = 1;
idleInhibitorEnabled = false;
tooltipsEnabled = true;
};
location = {
name = "Yelaguba";
showWeekNumberInCalendar = true;
use12hourFormat = false;
useFahrenheit = false;
};
network = {
wifiEnabled = false;
};
};
}; };
}; }
else {};
controlCenter = {
position = "close_to_bar_button";
quickSettingsStyle = "compact";
widgets = {
quickSettings = [
{
id = "Notifications";
}
{
id = "ScreenRecorder";
}
{
id = "KeepAwake";
}
{
id = "NightLight";
}
];
};
};
dock = {
displayMode = "auto_hide";
floatingRatio = 1;
onlySameOutput = true;
colorizeIcons = true;
monitors = [
"DP-3"
];
};
colors = with config.lib.stylix.colors; {
mBackground = base00;
mSurface = base01;
mOverlay = base02;
mMuted = base03;
mBorder = base04;
mText = base05;
mTextAlt = base06;
mTextDim = base07;
mError = base08;
mWarning = base09;
mAccent = base0A;
mSuccess = base0B;
mCyan = base0C;
mPrimary = base0D;
mMagenta = base0E;
mOrange = base0F;
mOnBackground = base05;
mOnSurface = base05;
mOnPrimary = base00;
mOnError = base00;
};
colorSchemes = {
darkMode = true;
useWallpaperColors = false;
generateTemplatesForPredefined = false;
predefinedScheme = "Tokyo Night";
matugenSchemeType = "scheme-fruit-salad";
};
osd = {
enabled = true;
alwaysOnTop = true;
autoHideMs = 2500;
location = "top";
monitors = [
"DP-3"
];
};
ui = {
fontDefault = "Nerd Fonts Hack";
fontDefaultScale = 1;
fontFixed = "Nerd Fonts Hack";
fontFixedScale = 1;
idleInhibitorEnabled = false;
tooltipsEnabled = true;
};
location = {
name = "Yelaguba";
showWeekNumberInCalendar = true;
use12hourFormat = false;
useFahrenheit = false;
};
network = {
wifiEnabled = false;
};
};
};
}
else {};
} }

View file

@ -1,23 +1,22 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
obs-studio = { obs-studio = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Hyprland"
config.home.gui.sessionType == "Hyprland" )
) true;
true;
plugins = with pkgs.obs-studio-plugins; [ plugins = with pkgs.obs-studio-plugins; [
wlrobs wlrobs
waveform waveform
obs-vkcapture obs-vkcapture
obs-pipewire-audio-capture obs-pipewire-audio-capture
]; ];
};
}; };
};
} }

View file

@ -1,19 +1,19 @@
{ {
lib, lib,
pkgs, pkgs,
inputs, inputs,
... ...
}: { }: {
programs = { programs = {
spicetify = { spicetify = {
enabledExtensions = with inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [ enabledExtensions = with inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [
adblock adblock
hidePodcasts hidePodcasts
shuffle shuffle
]; ];
theme = lib.mkForce inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text; theme = lib.mkForce inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text;
colorScheme = lib.mkForce "Spotify"; colorScheme = lib.mkForce "Spotify";
};
}; };
};
} }

View file

@ -1,53 +1,53 @@
{...}: { {...}: {
programs = { programs = {
starship = { starship = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
settings = { settings = {
add_newline = true; add_newline = true;
format = '' format = ''
[](bold blue) $hostname $os [](bold blue) $hostname $os
[](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status [](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status
[>](bold blue) [>](bold blue)
''; '';
right_format = ''$cmd_duration ($character) at $time''; right_format = ''$cmd_duration ($character) at $time'';
os = { os = {
format = "on [($name $codename$version$edition $symbol )]($style)"; format = "on [($name $codename$version$edition $symbol )]($style)";
style = "bold blue"; style = "bold blue";
disabled = false; disabled = false;
};
hostname = {
ssh_only = false;
format = "[$hostname]($style)";
style = "bold red";
disabled = false;
};
character = {
success_symbol = "[](bold green)";
error_symbol = "[](bold red)";
};
time = {
disabled = false;
format = " [$time]($style)";
time_format = "%H:%M";
utc_time_offset = "local";
style = "pale blue";
};
cmd_duration = {
disabled = false;
min_time = 250;
show_milliseconds = false;
show_notifications = false;
format = "was [$duration](bold green)";
};
};
}; };
hostname = {
ssh_only = false;
format = "[$hostname]($style)";
style = "bold red";
disabled = false;
};
character = {
success_symbol = "[](bold green)";
error_symbol = "[](bold red)";
};
time = {
disabled = false;
format = " [$time]($style)";
time_format = "%H:%M";
utc_time_offset = "local";
style = "pale blue";
};
cmd_duration = {
disabled = false;
min_time = 250;
show_milliseconds = false;
show_notifications = false;
format = "was [$duration](bold green)";
};
};
}; };
};
} }

View file

@ -1,19 +1,18 @@
{ {
config, config,
lib, lib,
... ...
}: { }: {
programs = { programs = {
swaylock = { swaylock = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Sway"
config.home.gui.sessionType == "Sway" )
) true;
true;
settings = { settings = {
show-failed-attempts = true; show-failed-attempts = true;
}; };
};
}; };
};
} }

View file

@ -1,48 +1,48 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
vscode = { vscode = {
profiles = { profiles = {
default = { default = {
extensions = with pkgs.vscode-extensions; [ extensions = with pkgs.vscode-extensions; [
jnoortheen.nix-ide jnoortheen.nix-ide
ms-vscode-remote.vscode-remote-extensionpack ms-vscode-remote.vscode-remote-extensionpack
ms-vsliveshare.vsliveshare ms-vsliveshare.vsliveshare
redhat.vscode-yaml redhat.vscode-yaml
redhat.ansible redhat.ansible
]; ];
userSettings = lib.mkForce { userSettings = lib.mkForce {
"editor.fontFamily" = config.stylix.fonts.emoji.name; "editor.fontFamily" = config.stylix.fonts.emoji.name;
"editor.fontSize" = 16; "editor.fontSize" = 16;
"editor.cursorBlinking" = "smooth"; "editor.cursorBlinking" = "smooth";
"editor.cursorSmoothCaretAnimation" = "on"; "editor.cursorSmoothCaretAnimation" = "on";
"editor.wordWrap" = "on"; "editor.wordWrap" = "on";
"workbench.colorTheme" = "Tokyo Night Moon"; "workbench.colorTheme" = "Tokyo Night Moon";
"workbench.sideBar.location" = "right"; "workbench.sideBar.location" = "right";
"workbench.activityBar.location" = "top"; "workbench.activityBar.location" = "top";
"workbench.editor.editorActionsLocation" = "titleBar"; "workbench.editor.editorActionsLocation" = "titleBar";
"workbench.editor.showTabs" = "none"; "workbench.editor.showTabs" = "none";
"window.menuBarVisibility" = "hidden"; "window.menuBarVisibility" = "hidden";
"terminal.integrated.cursorBlinking" = true; "terminal.integrated.cursorBlinking" = true;
"files.autoSave" = "afterDelay"; "files.autoSave" = "afterDelay";
"[nix]" = { "[nix]" = {
"editor.insertSpaces" = true; "editor.insertSpaces" = true;
"editor.tabSize" = 4; "editor.tabSize" = 4;
};
};
};
}; };
};
}; };
};
}; };
};
} }

View file

@ -1,109 +1,109 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
yazi = { yazi = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
shellWrapperName = "yz"; shellWrapperName = "yz";
settings = { settings = {
mgr = { mgr = {
sort_by = "natural"; sort_by = "natural";
sort_sensitive = true; sort_sensitive = true;
sort_reverse = false; sort_reverse = false;
sort_translit = true; sort_translit = true;
linemode = "size"; linemode = "size";
show_hidden = true; show_hidden = true;
show_symlink = true; show_symlink = true;
prepend_keymap = [ prepend_keymap = [
{ {
on = "R"; on = "R";
run = "plugin rsync"; run = "plugin rsync";
desc = "Copy files using rsync"; desc = "Copy files using rsync";
} }
{ {
on = "c, m"; on = "c, m";
run = "plugin chmod"; run = "plugin chmod";
desc = "Chmod on selected files"; desc = "Chmod on selected files";
} }
]; ];
};
preview = {
tab_size = 4;
image_filter = "lanczos3";
image_quality = 90;
};
opener = {
play = [
{
run = "${lib.getExe pkgs.mpv} ''$@''";
block = true;
for = "unix";
}
];
edit = [
{
run = "${lib.getExe pkgs.helix} ''$@''";
block = true;
for = "unix";
}
];
open = [
{
run = "${lib.getExe' pkgs.xdg-utils "xdg-open"} ''$@''";
block = true;
for = "unix";
}
];
};
input = {
cursor_blink = true;
};
plugin = {
prepend_fetchers = [
{
id = "git";
name = "*";
run = "git";
}
{
id = "git";
name = "*/";
run = "git";
}
];
};
};
plugins = {
inherit
(pkgs.yaziPlugins)
starship
rsync
git
chmod
full-border
;
};
initLua = ''
require("full-border"):setup({ type = ui.Border.ROUNDED })
require("starship"):setup()
require("git"):setup()
'';
}; };
preview = {
tab_size = 4;
image_filter = "lanczos3";
image_quality = 90;
};
opener = {
play = [
{
run = "${lib.getExe pkgs.mpv} ''$@''";
block = true;
for = "unix";
}
];
edit = [
{
run = "${lib.getExe pkgs.helix} ''$@''";
block = true;
for = "unix";
}
];
open = [
{
run = "${lib.getExe' pkgs.xdg-utils "xdg-open"} ''$@''";
block = true;
for = "unix";
}
];
};
input = {
cursor_blink = true;
};
plugin = {
prepend_fetchers = [
{
id = "git";
name = "*";
run = "git";
}
{
id = "git";
name = "*/";
run = "git";
}
];
};
};
plugins = {
inherit
(pkgs.yaziPlugins)
starship
rsync
git
chmod
full-border
;
};
initLua = ''
require("full-border"):setup({ type = ui.Border.ROUNDED })
require("starship"):setup()
require("git"):setup()
'';
}; };
};
} }

View file

@ -1,32 +1,32 @@
{pkgs, ...}: { {pkgs, ...}: {
programs = { programs = {
zed-editor = { zed-editor = {
enable = false; enable = false;
package = pkgs.zed-editor_git; package = pkgs.zed-editor_git;
installRemoteServer = true; installRemoteServer = true;
userSettings = { userSettings = {
vim_mode = true; vim_mode = true;
features = { features = {
copilot = false; copilot = false;
};
tab_bar = {
show = false;
};
telemetry = {
metrics = false;
};
};
extensions = [
"nix"
"xy-zed"
];
extraPackages = [
pkgs.nixd
];
}; };
tab_bar = {
show = false;
};
telemetry = {
metrics = false;
};
};
extensions = [
"nix"
"xy-zed"
];
extraPackages = [
pkgs.nixd
];
}; };
};
} }

View file

@ -1,24 +1,24 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
programs = { programs = {
zellij = { zellij = {
enable = true; enable = true;
settings = { settings = {
default_shell = "${lib.getExe pkgs.fish}"; default_shell = "${lib.getExe pkgs.fish}";
show_startup_tips = false; show_startup_tips = false;
show_release_notes = false; show_release_notes = false;
simplified_ui = true; simplified_ui = true;
ui = { ui = {
pane_frames = { pane_frames = {
rounded_corners = true; rounded_corners = true;
hide_session_name = false; hide_session_name = false;
}; };
};
};
}; };
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
programs = { programs = {
zoxide = { zoxide = {
enable = true; enable = true;
enableFishIntegration = true; enableFishIntegration = true;
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
qt = { qt = {
enable = true; enable = true;
}; };
} }

View file

@ -1,41 +1,40 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
services = { services = {
hypridle = { hypridle = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Hyprland"
config.home.gui.sessionType == "Hyprland" )
) true;
true;
settings = { settings = {
general = { general = {
before_sleep_cmd = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch dpms off"; before_sleep_cmd = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch dpms off";
after_sleep_cmd = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch dpms on"; after_sleep_cmd = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch dpms on";
};
listener = [
{
timeout = 300;
on-timeout = "${lib.getExe pkgs.brightnessctl} -s set 10";
on-resume = "${lib.getExe pkgs.brightnessctl} -r";
}
{
timeout = 600;
on-timeout = "${lib.getExe pkgs.hyprlock}";
}
{
timeout = 900;
on-timeout = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
}
];
};
}; };
listener = [
{
timeout = 300;
on-timeout = "${lib.getExe pkgs.brightnessctl} -s set 10";
on-resume = "${lib.getExe pkgs.brightnessctl} -r";
}
{
timeout = 600;
on-timeout = "${lib.getExe pkgs.hyprlock}";
}
{
timeout = 900;
on-timeout = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
}
];
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{pkgs, ...}: { {pkgs, ...}: {
services = { services = {
kdeconnect = { kdeconnect = {
package = pkgs.valent; package = pkgs.valent;
indicator = true; indicator = true;
};
}; };
};
} }

View file

@ -1,51 +1,50 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
services = { services = {
swayidle = { swayidle = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Sway"
config.home.gui.sessionType == "Sway" )
) true;
true;
events = [ events = [
{ {
event = "lock"; event = "lock";
command = "${lib.getExe pkgs.swaylock}"; command = "${lib.getExe pkgs.swaylock}";
} }
{ {
event = "before-sleep"; event = "before-sleep";
command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power off'"; command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power off'";
} }
{ {
event = "after-resume"; event = "after-resume";
command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power on'"; command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power on'";
} }
]; ];
timeouts = [ timeouts = [
{ {
timeout = 300; timeout = 300;
command = "${lib.getExe pkgs.brightnessctl} -s set 10"; command = "${lib.getExe pkgs.brightnessctl} -s set 10";
resumeCommand = "${lib.getExe pkgs.brightnessctl} -r"; resumeCommand = "${lib.getExe pkgs.brightnessctl} -r";
} }
{ {
timeout = 600; timeout = 600;
command = "${lib.getExe pkgs.swaylock}"; command = "${lib.getExe pkgs.swaylock}";
} }
{ {
timeout = 900; timeout = 900;
command = "${lib.getExe' pkgs.systemd "systemctl"} suspend"; command = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
} }
]; ];
};
}; };
};
} }

View file

@ -1,15 +1,15 @@
{self, ...}: { {self, ...}: {
imports = [ imports = [
"${self}/hand7s/nix/settings/substituters.nix" "${self}/hand7s/nix/settings/substituters.nix"
"${self}/hand7s/nix/settings/trusted-public-keys.nix" "${self}/hand7s/nix/settings/trusted-public-keys.nix"
"${self}/hand7s/nix/package.nix" "${self}/hand7s/nix/package.nix"
"${self}/hand7s/stylix/base16Scheme.nix" "${self}/hand7s/stylix/base16Scheme.nix"
"${self}/hand7s/stylix/cursor.nix" "${self}/hand7s/stylix/cursor.nix"
"${self}/hand7s/stylix/defaults.nix" "${self}/hand7s/stylix/defaults.nix"
"${self}/hand7s/stylix/fonts.nix" "${self}/hand7s/stylix/fonts.nix"
"${self}/hand7s/stylix/image.nix" "${self}/hand7s/stylix/image.nix"
"${self}/hand7s/" "${self}/hand7s/"
]; ];
} }

View file

@ -1,24 +1,24 @@
{...}: { {...}: {
stylix = { stylix = {
base16Scheme = { base16Scheme = {
scheme = "Tokyonight by Folke Lemaitre (https://github.com/folke)"; scheme = "Tokyonight by Folke Lemaitre (https://github.com/folke)";
name = "Tokyonight"; name = "Tokyonight";
base00 = "#24283b"; base00 = "#24283b";
base01 = "#1f2335"; base01 = "#1f2335";
base02 = "#292e42"; base02 = "#292e42";
base03 = "#565f89"; base03 = "#565f89";
base04 = "#a9b1d6"; base04 = "#a9b1d6";
base05 = "#c0caf5"; base05 = "#c0caf5";
base06 = "#c0caf5"; base06 = "#c0caf5";
base07 = "#c0caf5"; base07 = "#c0caf5";
base08 = "#f7768e"; base08 = "#f7768e";
base09 = "#ff9e64"; base09 = "#ff9e64";
base0A = "#e0af68"; base0A = "#e0af68";
base0B = "#9ece6a"; base0B = "#9ece6a";
base0C = "#1abc9c"; base0C = "#1abc9c";
base0D = "#41a6b5"; base0D = "#41a6b5";
base0E = "#bb9af7"; base0E = "#bb9af7";
base0F = "#ff007c"; base0F = "#ff007c";
};
}; };
};
} }

View file

@ -1,9 +1,9 @@
{pkgs, ...}: { {pkgs, ...}: {
stylix = { stylix = {
cursor = { cursor = {
name = "material_light_cursors"; name = "material_light_cursors";
package = pkgs.material-cursors; package = pkgs.material-cursors;
size = 20; size = 20;
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = true;
polarity = "dark"; polarity = "dark";
}; };
} }

View file

@ -1,32 +1,32 @@
{pkgs, ...}: { {pkgs, ...}: {
stylix = { stylix = {
fonts = { fonts = {
sizes = { sizes = {
applications = 10; applications = 10;
desktop = 8; desktop = 8;
popups = 10; popups = 10;
terminal = 10; terminal = 10;
}; };
monospace = { monospace = {
package = pkgs.nerd-fonts.roboto-mono; package = pkgs.nerd-fonts.roboto-mono;
name = "Roboto-Mono Nerd Font"; name = "Roboto-Mono Nerd Font";
}; };
emoji = { emoji = {
package = pkgs.nerd-fonts.symbols-only; package = pkgs.nerd-fonts.symbols-only;
name = "Symbols Only Nerd Font"; name = "Symbols Only Nerd Font";
}; };
sansSerif = { sansSerif = {
package = pkgs.nerd-fonts.aurulent-sans-mono; package = pkgs.nerd-fonts.aurulent-sans-mono;
name = "Aurulent Sans Mono Nerd Font"; name = "Aurulent Sans Mono Nerd Font";
}; };
serif = { serif = {
package = pkgs.nerd-fonts.hack; package = pkgs.nerd-fonts.hack;
name = "Hack Nerd Font"; name = "Hack Nerd Font";
}; };
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
stylix = { stylix = {
image = ./wallpaper3.jpg; image = ./wallpaper3.jpg;
}; };
} }

View file

@ -1,32 +1,32 @@
{...}: { {...}: {
stylix = { stylix = {
base16Scheme = { base16Scheme = {
base00 = "2a1617"; base00 = "2a1617";
base01 = "5d3f3f"; base01 = "5d3f3f";
base02 = "7a5bab"; base02 = "7a5bab";
base03 = "bb9499"; base03 = "bb9499";
base04 = "eea1cf"; base04 = "eea1cf";
base05 = "f5dddd"; base05 = "f5dddd";
base06 = "ffebff"; base06 = "ffebff";
base07 = "ffede9"; base07 = "ffede9";
base08 = "e36b70"; base08 = "e36b70";
base09 = "ac878e"; base09 = "ac878e";
base0A = "db7356"; base0A = "db7356";
base0B = "a78897"; base0B = "a78897";
base0C = "ca7a79"; base0C = "ca7a79";
base0D = "b28776"; base0D = "b28776";
base0E = "d8708b"; base0E = "d8708b";
base0F = "ec6653"; base0F = "ec6653";
base10 = "2a1617"; base10 = "2a1617";
base11 = "2a1617"; base11 = "2a1617";
base12 = "e36b70"; base12 = "e36b70";
base13 = "ac878e"; base13 = "ac878e";
base14 = "a78897"; base14 = "a78897";
base15 = "ca7a79"; base15 = "ca7a79";
base16 = "b28776"; base16 = "b28776";
base17 = "d8708b"; base17 = "d8708b";
scheme = "hand7s"; scheme = "hand7s";
name = "red_ish"; name = "red_ish";
};
}; };
};
} }

View file

@ -1,33 +1,33 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
systemd = { systemd = {
user = { user = {
services = { services = {
hyprpolkitagent = { hyprpolkitagent = {
Unit = { Unit = {
Description = "Hyprpolkitagent service."; Description = "Hyprpolkitagent service.";
After = "graphical-session.target"; After = "graphical-session.target";
PartOf = "graphical-session.target"; PartOf = "graphical-session.target";
}; };
Service = { Service = {
Type = "simple"; Type = "simple";
ExecStart = "${lib.getExe pkgs.hyprpolkitagent}"; ExecStart = "${lib.getExe pkgs.hyprpolkitagent}";
Restart = "always"; Restart = "always";
RestartSec = 1; RestartSec = 1;
TimeoutStopSec = 10; TimeoutStopSec = 10;
}; };
Install = { Install = {
WantedBy = [ WantedBy = [
"graphical-session.target" "graphical-session.target"
]; ];
}; };
};
};
}; };
};
}; };
};
} }

View file

@ -1,274 +1,273 @@
{ {
inputs, inputs,
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
wayland = { wayland = {
windowManager = { windowManager = {
hyprland = { hyprland = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Hyprland"
config.home.gui.sessionType == "Hyprland" )
) true;
true;
package = inputs.hyprland.packages.${pkgs.system}.hyprland; package = inputs.hyprland.packages.${pkgs.system}.hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
settings = { settings = {
monitor = ", 2560x1440@165.00Hz, 0x0, 1"; monitor = ", 2560x1440@165.00Hz, 0x0, 1";
general = { general = {
gaps_in = "5"; gaps_in = "5";
gaps_out = "20"; gaps_out = "20";
border_size = "2"; border_size = "2";
layout = "dwindle"; layout = "dwindle";
snap = { snap = {
enabled = false; enabled = false;
window_gap = "5"; window_gap = "5";
monitor_gap = "5"; monitor_gap = "5";
border_overlap = false; border_overlap = false;
};
};
input = {
kb_layout = "us, ru";
kb_options = "grp:caps_toggle";
numlock_by_default = true;
follow_mouse = "1";
left_handed = false;
sensitivity = "0";
special_fallthrough = true;
focus_on_close = 1;
touchpad = {
disable_while_typing = true;
tap-to-click = true;
};
tablet = {
output = "current";
left_handed = true;
};
};
gestures = {
workspace_swipe = true;
workspace_swipe_fingers = true;
workspace_swipe_distance = 400;
};
decoration = {
active_opacity = "0.85";
inactive_opacity = "0.65";
fullscreen_opacity = "1.0";
rounding = "10";
dim_inactive = true;
dim_strength = "0.15";
dim_special = "0.0";
dim_around = "0.05";
shadow = {
enabled = true;
render_power = "4";
range = "4";
ignore_window = false;
};
blur = {
enabled = true;
size = "10";
passes = "5";
};
};
execr-once = [
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service"
# "${lib.getExe' pkgs.systemd "systemctl"} --user start noctalis.service"
"${lib.getExe inputs.noctalia.packages.${pkgs.system}.default}"
"${lib.getExe' pkgs.hyprland "hyprctl"} setcursor material_light_cursors 20"
];
bind = [
"ALT, return, exec, ${lib.getExe pkgs.ghostty}"
"ALT, Q, killactive,"
"ALT, S, exec, ${lib.getExe inputs.noctalia.packages.${pkgs.system}.default} ipc call launcher toggle"
"ALT, F, fullscreen, 0"
"ALT, L, exec, ${lib.getExe pkgs.hyprlock}"
"ALT SHIFT, E, exit,"
"ALT SHIFT, space, togglefloating, active"
"ALT SHIFT, S, exec, ${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png"
"ALT, left, movefocus, l"
"ALT, right, movefocus, r"
"ALT, up, movefocus, u"
"ALT, down, movefocus, d"
"ALT, 1, workspace, 1"
"ALT, 2, workspace, 2"
"ALT, 3, workspace, 3"
"ALT, 4, workspace, 4"
"ALT, 5, workspace, 5"
"ALT, 6, workspace, 6"
"ALT, 7, workspace, 7"
"ALT, 8, workspace, 8"
"ALT, 9, workspace, 9"
"ALT, 0, workspace, 10"
"ALT, H, togglespecialworkspace, special"
"ALT SHIFT, 1, movetoworkspacesilent, 1"
"ALT SHIFT, 2, movetoworkspacesilent, 2"
"ALT SHIFT, 3, movetoworkspacesilent, 3"
"ALT SHIFT, 4, movetoworkspacesilent, 4"
"ALT SHIFT, 5, movetoworkspacesilent, 5"
"ALT SHIFT, 6, movetoworkspacesilent, 6"
"ALT SHIFT, 7, movetoworkspacesilent, 7"
"ALT SHIFT, 8, movetoworkspacesilent, 8"
"ALT SHIFT, 9, movetoworkspacesilent, 9"
"ALT SHIFT, 0, movetoworkspacesilent, 10"
"ALT SHIFT, H, movetoworkspacesilent, special"
"ALT, mouse_down, workspace, e+1"
"ALT, mouse_up, workspace, e-1"
];
bindel = [
", XF86AudioRaiseVolume, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+"
", XF86AudioLowerVolume, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-"
", XF86MonBrightnessDown, exec, ${lib.getExe pkgs.brightnessctl} set 5%-"
", XF86MonBrightnessUp, exec, ${lib.getExe pkgs.brightnessctl} set +5%"
];
bindl = [
", XF86AudioPlay, exec, ${lib.getExe pkgs.playerctl} play-pause"
", XF86AudioPrev, exec, ${lib.getExe pkgs.playerctl} previous"
", XF86AudioNext, exec, ${lib.getExe pkgs.playerctl} next"
", XF86AudioMute, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle"
];
bindm = [
"ALT, mouse:272, movewindow"
"ALT, mouse:273, resizewindow"
];
animation = [
"enabled = true"
"bezier = bez, 0.05, 0.9, 0.1, 1.05"
"animation = windows, 1, 7, bez"
"animation = windowsOut, 1, 7, default, popin 80%"
"animation = border, 1, 10, default"
"animation = borderangle, 1, 10, default"
"animation = fade, 1, 7, default"
"animation = workspaces, 1, 7, default"
];
misc = {
disable_hyprland_logo = true;
disable_splash_rendering = true;
middle_click_paste = false;
animate_manual_resizes = true;
animate_mouse_windowdragging = true;
focus_on_activate = true;
close_special_on_empty = true;
initial_workspace_tracking = "2";
};
render = {
cm_auto_hdr = 0;
};
binds = {
workspace_back_and_forth = true;
allow_workspace_cycles = true;
workspace_center_on = true;
};
xwayland = {
enabled = true;
use_nearest_neighbor = true;
force_zero_scaling = false;
};
ecosystem = {
no_update_news = true;
no_donation_nag = true;
};
debug = {
suppress_errors = true;
};
plugin = {
hyprscrolling = {
fullscreen_on_one_column = true;
follow_focus = true;
};
easymotion = {
only_special = false;
};
dynamic-cursors = {
enabled = true;
mode = "strech";
threshold = 2;
stretch = {
limit = 4000;
function = "quadratic";
};
shake = {
enabled = true;
nearest = true;
threshold = 10.0;
effects = true;
};
hyprcursor = {
enabled = true;
nearest = true;
fallback = "clientside";
};
};
touch_gestures = {
sensitivity = 0.0;
workspace_swipe_fingers = 4;
long_press_delay = 400;
resize_on_border_long_press = true;
edge_margin = 10;
emulate_touchpad_swipe = false;
};
};
};
plugins = [
# pkgs.hyprlandPlugins.hypr-dynamic-cursors
# pkgs.hyprlandPlugins.xtra-dispatchers
# pkgs.hyprlandPlugins.hyprwinwrap
# pkgs.hyprlandPlugins.hyprgrass
# pkgs.hyprlandPlugins.hyprscrolling
# inputs.hyprcurs.packages.${pkgs.system}.hypr-dynamic-cursors
# inputs.hyprplugs.packages.${pkgs.system}.hyprscrolling
# inputs.hyprplugs.packages.${pkgs.system}.xtra-dispatchers
# inputs.hyprplugs.packages.${pkgs.system}.hyprwinwrap
];
}; };
};
input = {
kb_layout = "us, ru";
kb_options = "grp:caps_toggle";
numlock_by_default = true;
follow_mouse = "1";
left_handed = false;
sensitivity = "0";
special_fallthrough = true;
focus_on_close = 1;
touchpad = {
disable_while_typing = true;
tap-to-click = true;
};
tablet = {
output = "current";
left_handed = true;
};
};
gestures = {
workspace_swipe = true;
workspace_swipe_fingers = true;
workspace_swipe_distance = 400;
};
decoration = {
active_opacity = "0.85";
inactive_opacity = "0.65";
fullscreen_opacity = "1.0";
rounding = "10";
dim_inactive = true;
dim_strength = "0.15";
dim_special = "0.0";
dim_around = "0.05";
shadow = {
enabled = true;
render_power = "4";
range = "4";
ignore_window = false;
};
blur = {
enabled = true;
size = "10";
passes = "5";
};
};
execr-once = [
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service"
# "${lib.getExe' pkgs.systemd "systemctl"} --user start noctalis.service"
"${lib.getExe inputs.noctalia.packages.${pkgs.system}.default}"
"${lib.getExe' pkgs.hyprland "hyprctl"} setcursor material_light_cursors 20"
];
bind = [
"ALT, return, exec, ${lib.getExe pkgs.ghostty}"
"ALT, Q, killactive,"
"ALT, S, exec, ${lib.getExe inputs.noctalia.packages.${pkgs.system}.default} ipc call launcher toggle"
"ALT, F, fullscreen, 0"
"ALT, L, exec, ${lib.getExe pkgs.hyprlock}"
"ALT SHIFT, E, exit,"
"ALT SHIFT, space, togglefloating, active"
"ALT SHIFT, S, exec, ${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png"
"ALT, left, movefocus, l"
"ALT, right, movefocus, r"
"ALT, up, movefocus, u"
"ALT, down, movefocus, d"
"ALT, 1, workspace, 1"
"ALT, 2, workspace, 2"
"ALT, 3, workspace, 3"
"ALT, 4, workspace, 4"
"ALT, 5, workspace, 5"
"ALT, 6, workspace, 6"
"ALT, 7, workspace, 7"
"ALT, 8, workspace, 8"
"ALT, 9, workspace, 9"
"ALT, 0, workspace, 10"
"ALT, H, togglespecialworkspace, special"
"ALT SHIFT, 1, movetoworkspacesilent, 1"
"ALT SHIFT, 2, movetoworkspacesilent, 2"
"ALT SHIFT, 3, movetoworkspacesilent, 3"
"ALT SHIFT, 4, movetoworkspacesilent, 4"
"ALT SHIFT, 5, movetoworkspacesilent, 5"
"ALT SHIFT, 6, movetoworkspacesilent, 6"
"ALT SHIFT, 7, movetoworkspacesilent, 7"
"ALT SHIFT, 8, movetoworkspacesilent, 8"
"ALT SHIFT, 9, movetoworkspacesilent, 9"
"ALT SHIFT, 0, movetoworkspacesilent, 10"
"ALT SHIFT, H, movetoworkspacesilent, special"
"ALT, mouse_down, workspace, e+1"
"ALT, mouse_up, workspace, e-1"
];
bindel = [
", XF86AudioRaiseVolume, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+"
", XF86AudioLowerVolume, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-"
", XF86MonBrightnessDown, exec, ${lib.getExe pkgs.brightnessctl} set 5%-"
", XF86MonBrightnessUp, exec, ${lib.getExe pkgs.brightnessctl} set +5%"
];
bindl = [
", XF86AudioPlay, exec, ${lib.getExe pkgs.playerctl} play-pause"
", XF86AudioPrev, exec, ${lib.getExe pkgs.playerctl} previous"
", XF86AudioNext, exec, ${lib.getExe pkgs.playerctl} next"
", XF86AudioMute, exec, ${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle"
];
bindm = [
"ALT, mouse:272, movewindow"
"ALT, mouse:273, resizewindow"
];
animation = [
"enabled = true"
"bezier = bez, 0.05, 0.9, 0.1, 1.05"
"animation = windows, 1, 7, bez"
"animation = windowsOut, 1, 7, default, popin 80%"
"animation = border, 1, 10, default"
"animation = borderangle, 1, 10, default"
"animation = fade, 1, 7, default"
"animation = workspaces, 1, 7, default"
];
misc = {
disable_hyprland_logo = true;
disable_splash_rendering = true;
middle_click_paste = false;
animate_manual_resizes = true;
animate_mouse_windowdragging = true;
focus_on_activate = true;
close_special_on_empty = true;
initial_workspace_tracking = "2";
};
render = {
cm_auto_hdr = 0;
};
binds = {
workspace_back_and_forth = true;
allow_workspace_cycles = true;
workspace_center_on = true;
};
xwayland = {
enabled = true;
use_nearest_neighbor = true;
force_zero_scaling = false;
};
ecosystem = {
no_update_news = true;
no_donation_nag = true;
};
debug = {
suppress_errors = true;
};
plugin = {
hyprscrolling = {
fullscreen_on_one_column = true;
follow_focus = true;
};
easymotion = {
only_special = false;
};
dynamic-cursors = {
enabled = true;
mode = "strech";
threshold = 2;
stretch = {
limit = 4000;
function = "quadratic";
};
shake = {
enabled = true;
nearest = true;
threshold = 10.0;
effects = true;
};
hyprcursor = {
enabled = true;
nearest = true;
fallback = "clientside";
};
};
touch_gestures = {
sensitivity = 0.0;
workspace_swipe_fingers = 4;
long_press_delay = 400;
resize_on_border_long_press = true;
edge_margin = 10;
emulate_touchpad_swipe = false;
};
};
}; };
plugins = [
# pkgs.hyprlandPlugins.hypr-dynamic-cursors
# pkgs.hyprlandPlugins.xtra-dispatchers
# pkgs.hyprlandPlugins.hyprwinwrap
# pkgs.hyprlandPlugins.hyprgrass
# pkgs.hyprlandPlugins.hyprscrolling
# inputs.hyprcurs.packages.${pkgs.system}.hypr-dynamic-cursors
# inputs.hyprplugs.packages.${pkgs.system}.hyprscrolling
# inputs.hyprplugs.packages.${pkgs.system}.xtra-dispatchers
# inputs.hyprplugs.packages.${pkgs.system}.hyprwinwrap
];
};
}; };
};
} }

View file

@ -1,112 +1,111 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
wayland = { wayland = {
windowManager = { windowManager = {
river = { river = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "River"
config.home.gui.sessionType == "River" )
) true;
true;
settings = { settings = {
default-layout = "rivertile"; default-layout = "rivertile";
focus-follows-cursor = "normal"; focus-follows-cursor = "normal";
border-width = 2; border-width = 2;
declare-mod = [ declare-mod = [
"locked" "locked"
"normal" "normal"
]; ];
xwayland = { xwayland = {
enable = true; enable = true;
}; };
map = { map = {
normal = { normal = {
"Alt Q" = "close"; "Alt Q" = "close";
"Alt S" = "spawn fuzzel"; "Alt S" = "spawn fuzzel";
"Alt Return" = "spawn ghostty"; "Alt Return" = "spawn ghostty";
"Alt L" = "spawn hyprlock"; "Alt L" = "spawn hyprlock";
"Alt F" = "toggle-fullscreen"; "Alt F" = "toggle-fullscreen";
"Alt+Shift S" = "spawn wayshot --clipboard"; "Alt+Shift S" = "spawn wayshot --clipboard";
"Alt+Shift E" = "exit"; "Alt+Shift E" = "exit";
"Alt+Shift Space" = "toggle-float"; "Alt+Shift Space" = "toggle-float";
"Alt Up" = "send-to-output next"; "Alt Up" = "send-to-output next";
"Alt Down" = "send-to-output previous"; "Alt Down" = "send-to-output previous";
"Alt Right" = "send-to-output next"; "Alt Right" = "send-to-output next";
"Alt Left" = "send-to-output previous"; "Alt Left" = "send-to-output previous";
"Alt 1" = "set-focused-tags 0"; "Alt 1" = "set-focused-tags 0";
"Alt 2" = "set-focused-tags 1"; "Alt 2" = "set-focused-tags 1";
"Alt 3" = "set-focused-tags 2"; "Alt 3" = "set-focused-tags 2";
"Alt 4" = "set-focused-tags 3"; "Alt 4" = "set-focused-tags 3";
"Alt 5" = "set-focused-tags 4"; "Alt 5" = "set-focused-tags 4";
"Alt 6" = "set-focused-tags 5"; "Alt 6" = "set-focused-tags 5";
"Alt 7" = "set-focused-tags 6"; "Alt 7" = "set-focused-tags 6";
"Alt 8" = "set-focused-tags 7"; "Alt 8" = "set-focused-tags 7";
"Alt 9" = "set-focused-tags 8"; "Alt 9" = "set-focused-tags 8";
"Alt H" = "toggle-focused-tags 20"; "Alt H" = "toggle-focused-tags 20";
"Alt+Shift 1" = "set-view-tags 0"; "Alt+Shift 1" = "set-view-tags 0";
"Alt+Shift 2" = "set-view-tags 1"; "Alt+Shift 2" = "set-view-tags 1";
"Alt+Shift 3" = "set-view-tags 2"; "Alt+Shift 3" = "set-view-tags 2";
"Alt+Shift 4" = "set-view-tags 3"; "Alt+Shift 4" = "set-view-tags 3";
"Alt+Shift 5" = "set-view-tags 4"; "Alt+Shift 5" = "set-view-tags 4";
"Alt+Shift 6" = "set-view-tags 5"; "Alt+Shift 6" = "set-view-tags 5";
"Alt+Shift 7" = "set-view-tags 6"; "Alt+Shift 7" = "set-view-tags 6";
"Alt+Shift 8" = "set-view-tags 7"; "Alt+Shift 8" = "set-view-tags 7";
"Alt+Shift 9" = "set-view-tags 8"; "Alt+Shift 9" = "set-view-tags 8";
"Alt+Shift H" = "set-view-tags 20"; "Alt+Shift H" = "set-view-tags 20";
"Alt+Control 1" = "toggle-focused-tags 0"; "Alt+Control 1" = "toggle-focused-tags 0";
"Alt+Control 2" = "toggle-focused-tags 1"; "Alt+Control 2" = "toggle-focused-tags 1";
"Alt+Control 3" = "toggle-focused-tags 2"; "Alt+Control 3" = "toggle-focused-tags 2";
"Alt+Control 4" = "toggle-focused-tags 3"; "Alt+Control 4" = "toggle-focused-tags 3";
"Alt+Control 5" = "toggle-focused-tags 4"; "Alt+Control 5" = "toggle-focused-tags 4";
"Alt+Control 6" = "toggle-focused-tags 5"; "Alt+Control 6" = "toggle-focused-tags 5";
"Alt+Control 7" = "toggle-focused-tags 6"; "Alt+Control 7" = "toggle-focused-tags 6";
"Alt+Control 8" = "toggle-focused-tags 7"; "Alt+Control 8" = "toggle-focused-tags 7";
"Alt+Control 9" = "toggle-focused-tags 8"; "Alt+Control 9" = "toggle-focused-tags 8";
"Alt+Control H" = "toggle-focused-tags 20"; "Alt+Control H" = "toggle-focused-tags 20";
"Alt+Shift+Control 1" = "toggle-view-tags 0"; "Alt+Shift+Control 1" = "toggle-view-tags 0";
"Alt+Shift+Control 2" = "toggle-view-tags 1"; "Alt+Shift+Control 2" = "toggle-view-tags 1";
"Alt+Shift+Control 3" = "toggle-view-tags 2"; "Alt+Shift+Control 3" = "toggle-view-tags 2";
"Alt+Shift+Control 4" = "toggle-view-tags 3"; "Alt+Shift+Control 4" = "toggle-view-tags 3";
"Alt+Shift+Control 5" = "toggle-view-tags 4"; "Alt+Shift+Control 5" = "toggle-view-tags 4";
"Alt+Shift+Control 6" = "toggle-view-tags 5"; "Alt+Shift+Control 6" = "toggle-view-tags 5";
"Alt+Shift+Control 7" = "toggle-view-tags 6"; "Alt+Shift+Control 7" = "toggle-view-tags 6";
"Alt+Shift+Control 8" = "toggle-view-tags 7"; "Alt+Shift+Control 8" = "toggle-view-tags 7";
"Alt+Shift+Control 9" = "toggle-view-tags 8"; "Alt+Shift+Control 9" = "toggle-view-tags 8";
"Alt+Shift+Control H" = "toggle-view-tags 20"; "Alt+Shift+Control H" = "toggle-view-tags 20";
};
map-pointer = {
normal = {
"Alt BTN_LEFT" = "move-view";
"Alt BTN_RIGHT" = "resize-view";
};
};
};
};
extraConfig = ''
${lib.getExe' pkgs.river "riverctl"} keyboard-layout -options "grp:caps_toggle" "us,ru"
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=300 ${lib.getExe pkgs.brightnessctl} -s set 10
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=600 ${lib.getExe pkgs.waylock}
'';
}; };
map-pointer = {
normal = {
"Alt BTN_LEFT" = "move-view";
"Alt BTN_RIGHT" = "resize-view";
};
};
};
}; };
extraConfig = ''
${lib.getExe' pkgs.river "riverctl"} keyboard-layout -options "grp:caps_toggle" "us,ru"
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=300 ${lib.getExe pkgs.brightnessctl} -s set 10
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=600 ${lib.getExe pkgs.waylock}
'';
};
}; };
};
} }

View file

@ -1,185 +1,184 @@
{ {
config, config,
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
wayland = { wayland = {
windowManager = { windowManager = {
sway = { sway = {
enable = enable = lib.mkIf (
lib.mkIf ( config.home.gui.sessionType == "Sway"
config.home.gui.sessionType == "Sway" )
) true;
true;
package = pkgs.sway; package = pkgs.sway;
config = { config = {
bindkeysToCode = true; bindkeysToCode = true;
defaultWorkspace = "workspace number 1"; defaultWorkspace = "workspace number 1";
workspaceAutoBackAndForth = true; workspaceAutoBackAndForth = true;
bars = []; bars = [];
window = { window = {
border = 2; border = 2;
titlebar = false; titlebar = false;
hideEdgeBorders = "both"; hideEdgeBorders = "both";
}; };
floating = { floating = {
border = 2; border = 2;
titlebar = false; titlebar = false;
modifier = "Mod1"; modifier = "Mod1";
}; };
focus = { focus = {
forceWrapping = true; forceWrapping = true;
mouseWarping = true; mouseWarping = true;
followMouse = "always"; followMouse = "always";
newWindow = "smart"; newWindow = "smart";
wrapping = "yes"; wrapping = "yes";
}; };
gaps = { gaps = {
vertical = null; vertical = null;
horizontal = null; horizontal = null;
outer = null; outer = null;
inner = null; inner = null;
top = null; top = null;
bottom = null; bottom = null;
left = null; left = null;
right = null; right = null;
smartGaps = false; smartGaps = false;
smartBorders = "no_gaps"; smartBorders = "no_gaps";
}; };
startup = [ startup = [
{ {
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service"; command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service";
} }
{ {
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service"; command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service";
} }
{ {
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service"; command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service";
} }
{ {
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service"; command = "${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service";
} }
{ {
command = "${lib.getExe pkgs.sway-audio-idle-inhibit}"; command = "${lib.getExe pkgs.sway-audio-idle-inhibit}";
} }
{ {
command = "${lib.getExe pkgs.autotiling-rs}"; command = "${lib.getExe pkgs.autotiling-rs}";
} }
{ {
command = "${lib.getExe pkgs.swaykbdd}"; command = "${lib.getExe pkgs.swaykbdd}";
} }
]; ];
keybindings = lib.mkOptionDefault { keybindings = lib.mkOptionDefault {
"Mod1+q" = "kill"; "Mod1+q" = "kill";
"Mod1+s" = "exec ${lib.getExe pkgs.fuzzel}"; "Mod1+s" = "exec ${lib.getExe pkgs.fuzzel}";
"Mod1+Return" = "exec ${lib.getExe pkgs.ghostty}"; "Mod1+Return" = "exec ${lib.getExe pkgs.ghostty}";
"Mod1+l" = "exec ${lib.getExe pkgs.swaylock}"; "Mod1+l" = "exec ${lib.getExe pkgs.swaylock}";
"Mod1+f" = "fullscreen toggle"; "Mod1+f" = "fullscreen toggle";
"Mod1+Shift+s" = "exec ${lib.getExe pkgs.sway-contrib.grimshot} --notify copy area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png"; "Mod1+Shift+s" = "exec ${lib.getExe pkgs.sway-contrib.grimshot} --notify copy area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png";
"Mod1+Shift+e" = "exec ${lib.getExe' pkgs.sway "swaymsg"} exit"; "Mod1+Shift+e" = "exec ${lib.getExe' pkgs.sway "swaymsg"} exit";
"Mod1+Space" = "floating toggle"; "Mod1+Space" = "floating toggle";
"Mod1+r" = "mode resize"; "Mod1+r" = "mode resize";
"Mod1+Left" = "focus left"; "Mod1+Left" = "focus left";
"Mod1+Right" = "focus right"; "Mod1+Right" = "focus right";
"Mod1+Up" = "focus up"; "Mod1+Up" = "focus up";
"Mod1+Down" = "focus down"; "Mod1+Down" = "focus down";
"Mod1+1" = "workspace number 1"; "Mod1+1" = "workspace number 1";
"Mod1+2" = "workspace number 2"; "Mod1+2" = "workspace number 2";
"Mod1+3" = "workspace number 3"; "Mod1+3" = "workspace number 3";
"Mod1+4" = "workspace number 4"; "Mod1+4" = "workspace number 4";
"Mod1+5" = "workspace number 5"; "Mod1+5" = "workspace number 5";
"Mod1+6" = "workspace number 6"; "Mod1+6" = "workspace number 6";
"Mod1+7" = "workspace number 7"; "Mod1+7" = "workspace number 7";
"Mod1+8" = "workspace number 8"; "Mod1+8" = "workspace number 8";
"Mod1+9" = "workspace number 9"; "Mod1+9" = "workspace number 9";
"Mod1+0" = "workspace number 10"; "Mod1+0" = "workspace number 10";
"Mod1+h" = "scratchpad show"; "Mod1+h" = "scratchpad show";
"Mod1+Shift+1" = "move container to workspace number 1"; "Mod1+Shift+1" = "move container to workspace number 1";
"Mod1+Shift+2" = "move container to workspace number 2"; "Mod1+Shift+2" = "move container to workspace number 2";
"Mod1+Shift+3" = "move container to workspace number 3"; "Mod1+Shift+3" = "move container to workspace number 3";
"Mod1+Shift+4" = "move container to workspace number 4"; "Mod1+Shift+4" = "move container to workspace number 4";
"Mod1+Shift+5" = "move container to workspace number 5"; "Mod1+Shift+5" = "move container to workspace number 5";
"Mod1+Shift+6" = "move container to workspace number 6"; "Mod1+Shift+6" = "move container to workspace number 6";
"Mod1+Shift+7" = "move container to workspace number 7"; "Mod1+Shift+7" = "move container to workspace number 7";
"Mod1+Shift+8" = "move container to workspace number 8"; "Mod1+Shift+8" = "move container to workspace number 8";
"Mod1+Shift+9" = "move container to workspace number 9"; "Mod1+Shift+9" = "move container to workspace number 9";
"Mod1+Shift+0" = "move container to workspace number 10"; "Mod1+Shift+0" = "move container to workspace number 10";
"Mod1+Shift+h" = "move scratchpad"; "Mod1+Shift+h" = "move scratchpad";
"XF86AudioRaiseVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+"; "XF86AudioRaiseVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+";
"XF86AudioLowerVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-"; "XF86AudioLowerVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-";
"XF86AudioMute" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle"; "XF86AudioMute" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle";
"XF86AudioPlay" = "exec ${lib.getExe pkgs.playerctl} play-pause"; "XF86AudioPlay" = "exec ${lib.getExe pkgs.playerctl} play-pause";
"XF86AudioPrev" = "exec ${lib.getExe pkgs.playerctl} previous"; "XF86AudioPrev" = "exec ${lib.getExe pkgs.playerctl} previous";
"XF86AudioNext" = "exec ${lib.getExe pkgs.playerctl} next"; "XF86AudioNext" = "exec ${lib.getExe pkgs.playerctl} next";
"XF86MonBrightnessDown" = "exec ${lib.getExe pkgs.brightnessctl} set 5%-"; "XF86MonBrightnessDown" = "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
"XF86MonBrightnessUp" = "exec ${lib.getExe pkgs.brightnessctl} set +5%"; "XF86MonBrightnessUp" = "exec ${lib.getExe pkgs.brightnessctl} set +5%";
}; };
modes = { modes = {
resize = { resize = {
"Left" = "resize shrink width 10px"; "Left" = "resize shrink width 10px";
"Right" = "resize shrink width 10px"; "Right" = "resize shrink width 10px";
"Up" = "resize shrink height 10px"; "Up" = "resize shrink height 10px";
"Down" = "resize shrink height 10px"; "Down" = "resize shrink height 10px";
"Shift+Left" = "resize grow width 10px"; "Shift+Left" = "resize grow width 10px";
"Shift+Right" = "resize grow width 10px"; "Shift+Right" = "resize grow width 10px";
"Shift+Up" = "resize grow height 10px"; "Shift+Up" = "resize grow height 10px";
"Shift+Down" = "resize grow height 10px"; "Shift+Down" = "resize grow height 10px";
"Escape" = "mode default"; "Escape" = "mode default";
"Return" = "mode default"; "Return" = "mode default";
};
};
input = {
"type:pointer" = {
accel_profile = "flat";
pointer_accel = "0";
};
"type:keyboard" = {
xkb_layout = "us,ru";
xkb_options = "grp:caps_toggle";
};
"type:touchpad" = {
natural_scroll = "enabled";
tap = "enabled";
};
};
};
extraConfig = ''
bindswitch lid:on exec swaylock
'';
}; };
};
input = {
"type:pointer" = {
accel_profile = "flat";
pointer_accel = "0";
};
"type:keyboard" = {
xkb_layout = "us,ru";
xkb_options = "grp:caps_toggle";
};
"type:touchpad" = {
natural_scroll = "enabled";
tap = "enabled";
};
};
}; };
extraConfig = ''
bindswitch lid:on exec swaylock
'';
};
}; };
};
} }

View file

@ -1,27 +1,27 @@
{lib, ...}: { {lib, ...}: {
boot = { boot = {
initrd = { initrd = {
availableKernelModules = [ availableKernelModules = [
"nvme" "nvme"
"xhci_pci" "xhci_pci"
"ahci" "ahci"
"usbhid" "usbhid"
"usb_storage" "usb_storage"
"sd_mod" "sd_mod"
"btrfs" "btrfs"
]; ];
supportedFilesystems = { supportedFilesystems = {
vfat = true; vfat = true;
btrfs = true; btrfs = true;
zfs = lib.mkForce true; zfs = lib.mkForce true;
}; };
systemd = { systemd = {
enable = true; enable = true;
}; };
verbose = false; verbose = false;
};
}; };
};
} }

View file

@ -1,81 +1,81 @@
{ {
config, config,
lib, lib,
... ...
}: { }: {
boot = { boot = {
kernel = { kernel = {
sysctl = { sysctl = {
"vm.swappiness" = 100; "vm.swappiness" = 100;
"vm.dirty_background_bytes" = 67108864; "vm.dirty_background_bytes" = 67108864;
"vm.dirty_bytes" = 268435456; "vm.dirty_bytes" = 268435456;
"vm.dirty_expire_centisecs" = 1500; "vm.dirty_expire_centisecs" = 1500;
"vm.dirty_writeback_centisecs" = 100; "vm.dirty_writeback_centisecs" = 100;
"vm.vfs_cache_pressure" = 50; "vm.vfs_cache_pressure" = 50;
"vm.max_map_count" = 1048576; "vm.max_map_count" = 1048576;
}; };
};
kernelPackages = pkgs.linuxPackages_cachyos-server;
extraModulePackages = with config.boot.kernelPackages; [
rtl8821ce
yt6801
];
kernelParams = [
"intel_pstate=passive"
"udev.log_priority=3"
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"page_alloc.shuffle=1"
"page_poison=1"
"slab_nomerge"
"kernel.watchdog=0"
"oops=panic"
];
blacklistedKernelModules = [
"ax25"
"netrom"
"rose"
"adfs"
"affs"
"bfs"
"befs"
"cramfs"
"efs"
"erofs"
"exofs"
"freevxfs"
"f2fs"
"hfs"
"hpfs"
"jfs"
"minix"
"nilfs2"
"ntfs"
"omfs"
"qnx4"
"qnx6"
"sysv"
"ufs"
"sp5100-tco"
"iTCO_wdt"
"rtw88_8821ce"
];
supportedFilesystems = {
vfat = true;
btrfs = true;
zfs = lib.mkForce true;
};
consoleLogLevel = 0;
}; };
kernelPackages = pkgs.linuxPackages_cachyos-server;
extraModulePackages = with config.boot.kernelPackages; [
rtl8821ce
yt6801
];
kernelParams = [
"intel_pstate=passive"
"udev.log_priority=3"
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"page_alloc.shuffle=1"
"page_poison=1"
"slab_nomerge"
"kernel.watchdog=0"
"oops=panic"
];
blacklistedKernelModules = [
"ax25"
"netrom"
"rose"
"adfs"
"affs"
"bfs"
"befs"
"cramfs"
"efs"
"erofs"
"exofs"
"freevxfs"
"f2fs"
"hfs"
"hpfs"
"jfs"
"minix"
"nilfs2"
"ntfs"
"omfs"
"qnx4"
"qnx6"
"sysv"
"ufs"
"sp5100-tco"
"iTCO_wdt"
"rtw88_8821ce"
];
supportedFilesystems = {
vfat = true;
btrfs = true;
zfs = lib.mkForce true;
};
consoleLogLevel = 0;
};
} }

View file

@ -1,13 +1,13 @@
{...}: { {...}: {
boot = { boot = {
lanzaboote = { lanzaboote = {
enable = false; enable = false;
configurationLimit = 7; configurationLimit = 7;
pkiBundle = "/var/lib/sbctl"; pkiBundle = "/var/lib/sbctl";
settings = { settings = {
timeout = 2; timeout = 2;
sortKey = "lanza"; sortKey = "lanza";
}; };
};
}; };
};
} }

View file

@ -1,19 +1,19 @@
{...}: { {...}: {
boot = { boot = {
loader = { loader = {
systemd-boot = { systemd-boot = {
enable = false; enable = false;
sortKey = "nixos"; sortKey = "nixos";
memtest86 = { memtest86 = {
enable = true; enable = true;
sortKey = "o_memtest86"; sortKey = "o_memtest86";
}; };
netbootxyz = { netbootxyz = {
enable = false; enable = false;
sortKey = "o_netbootxyz"; sortKey = "o_netbootxyz";
};
};
}; };
};
}; };
};
} }

View file

@ -1,10 +1,10 @@
{pkgs, ...}: { {pkgs, ...}: {
boot = { boot = {
plymouth = { plymouth = {
enable = true; enable = true;
themePackages = with pkgs; [ themePackages = with pkgs; [
nixos-bgrt-plymouth nixos-bgrt-plymouth
]; ];
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
boot = { boot = {
tmp = { tmp = {
useTmpfs = true; useTmpfs = true;
cleanOnBoot = true; cleanOnBoot = true;
};
}; };
};
} }

View file

@ -1,9 +1,9 @@
{...}: { {...}: {
boot = { boot = {
zfs = { zfs = {
package = pkgs.zfs_cachyos; package = pkgs.zfs_cachyos;
allowHibernation = false; allowHibernation = false;
removeLinuxDRM = false; removeLinuxDRM = false;
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
console = { console = {
useXkbConfig = true; useXkbConfig = true;
}; };
} }

View file

@ -1,96 +1,96 @@
{self, ...}: { {self, ...}: {
imports = [ imports = [
"${self}/s0meMiniPC-nix/boot/initrd.nix" "${self}/s0meMiniPC-nix/boot/initrd.nix"
"${self}/s0meMiniPC-nix/boot/kernel.nix" "${self}/s0meMiniPC-nix/boot/kernel.nix"
"${self}/s0meMiniPC-nix/boot/lanzaboote.nix" "${self}/s0meMiniPC-nix/boot/lanzaboote.nix"
"${self}/s0meMiniPC-nix/boot/plymouth.nix" "${self}/s0meMiniPC-nix/boot/plymouth.nix"
"${self}/s0meMiniPC-nix/boot/tmp.nix" "${self}/s0meMiniPC-nix/boot/tmp.nix"
"${self}/s0meMiniPC-nix/boot/loader/systemd-boot.nix" "${self}/s0meMiniPC-nix/boot/loader/systemd-boot.nix"
"${self}/s0meMiniPC-nix/boot/zfs.nix" "${self}/s0meMiniPC-nix/boot/zfs.nix"
"${self}/s0meMiniPC-nix/disko/disk.nix" "${self}/s0meMiniPC-nix/disko/disk.nix"
"${self}/s0meMiniPC-nix/disko/lvm_vg.nix" "${self}/s0meMiniPC-nix/disko/lvm_vg.nix"
"${self}/s0meMiniPC-nix/console/console.nix" "${self}/s0meMiniPC-nix/console/console.nix"
"${self}/s0meMiniPC-nix/environment/systemPackages.nix" "${self}/s0meMiniPC-nix/environment/systemPackages.nix"
"${self}/s0meMiniPC-nix/environment/variables.nix" "${self}/s0meMiniPC-nix/environment/variables.nix"
"${self}/s0meMiniPC-nix/hardware/cpu.nix" "${self}/s0meMiniPC-nix/hardware/cpu.nix"
"${self}/s0meMiniPC-nix/hardware/graphics.nix" "${self}/s0meMiniPC-nix/hardware/graphics.nix"
"${self}/s0meMiniPC-nix/hardware/zram.nix" "${self}/s0meMiniPC-nix/hardware/zram.nix"
"${self}/s0meMiniPC-nix/home-manager/users.nix" "${self}/s0meMiniPC-nix/home-manager/users.nix"
"${self}/s0meMiniPC-nix/i18n/locales.nix" "${self}/s0meMiniPC-nix/i18n/locales.nix"
"${self}/s0meMiniPC-nix/networking/dhcp.nix" "${self}/s0meMiniPC-nix/networking/dhcp.nix"
"${self}/s0meMiniPC-nix/networking/firewall.nix" "${self}/s0meMiniPC-nix/networking/firewall.nix"
"${self}/s0meMiniPC-nix/networking/hostname.nix" "${self}/s0meMiniPC-nix/networking/hostname.nix"
"${self}/s0meMiniPC-nix/networking/networkmanager.nix" "${self}/s0meMiniPC-nix/networking/networkmanager.nix"
"${self}/s0meMiniPC-nix/networking/wireguard.nix" "${self}/s0meMiniPC-nix/networking/wireguard.nix"
"${self}/s0meMiniPC-nix/networking/nameservers.nix" "${self}/s0meMiniPC-nix/networking/nameservers.nix"
"${self}/s0meMiniPC-nix/networking/hosts.nix" "${self}/s0meMiniPC-nix/networking/hosts.nix"
"${self}/s0meMiniPC-nix/networking/hostId.nix" "${self}/s0meMiniPC-nix/networking/hostId.nix"
"${self}/s0meMiniPC-nix/networking/interfaces.nix" "${self}/s0meMiniPC-nix/networking/interfaces.nix"
"${self}/s0meMiniPC-nix/nix/package.nix" "${self}/s0meMiniPC-nix/nix/package.nix"
"${self}/s0meMiniPC-nix/nix/settings/allowed-users.nix" "${self}/s0meMiniPC-nix/nix/settings/allowed-users.nix"
"${self}/s0meMiniPC-nix/nix/settings/experimental-features.nix" "${self}/s0meMiniPC-nix/nix/settings/experimental-features.nix"
"${self}/s0meMiniPC-nix/nix/settings/substituters.nix" "${self}/s0meMiniPC-nix/nix/settings/substituters.nix"
"${self}/s0meMiniPC-nix/nix/settings/trusted-public-keys.nix" "${self}/s0meMiniPC-nix/nix/settings/trusted-public-keys.nix"
"${self}/s0meMiniPC-nix/nix/settings/trusted-users.nix" "${self}/s0meMiniPC-nix/nix/settings/trusted-users.nix"
"${self}/s0meMiniPC-nix/nix/settings/auto-optimise-store.nix" "${self}/s0meMiniPC-nix/nix/settings/auto-optimise-store.nix"
"${self}/s0meMiniPC-nix/nixpkgs/config.nix" "${self}/s0meMiniPC-nix/nixpkgs/config.nix"
"${self}/s0meMiniPC-nix/nixpkgs/system.nix" "${self}/s0meMiniPC-nix/nixpkgs/system.nix"
"${self}/s0meMiniPC-nix/programs/nh.nix" "${self}/s0meMiniPC-nix/programs/nh.nix"
"${self}/s0meMiniPC-nix/programs/ssh.nix" "${self}/s0meMiniPC-nix/programs/ssh.nix"
"${self}/s0meMiniPC-nix/security/polkit.nix" "${self}/s0meMiniPC-nix/security/polkit.nix"
"${self}/s0meMiniPC-nix/security/rtkit.nix" "${self}/s0meMiniPC-nix/security/rtkit.nix"
"${self}/s0meMiniPC-nix/security/sudo.nix" "${self}/s0meMiniPC-nix/security/sudo.nix"
"${self}/s0meMiniPC-nix/security/sudo-rs.nix" "${self}/s0meMiniPC-nix/security/sudo-rs.nix"
"${self}/s0meMiniPC-nix/services/greetd.nix" "${self}/s0meMiniPC-nix/services/greetd.nix"
"${self}/s0meMiniPC-nix/services/libinput.nix" "${self}/s0meMiniPC-nix/services/libinput.nix"
"${self}/s0meMiniPC-nix/services/openssh.nix" "${self}/s0meMiniPC-nix/services/openssh.nix"
"${self}/s0meMiniPC-nix/services/pipewire.nix" "${self}/s0meMiniPC-nix/services/pipewire.nix"
"${self}/s0meMiniPC-nix/services/netbird.nix" "${self}/s0meMiniPC-nix/services/netbird.nix"
"${self}/s0meMiniPC-nix/services/scx.nix" "${self}/s0meMiniPC-nix/services/scx.nix"
"${self}/s0meMiniPC-nix/services/xserver.nix" "${self}/s0meMiniPC-nix/services/xserver.nix"
"${self}/s0meMiniPC-nix/services/zapret.nix" "${self}/s0meMiniPC-nix/services/zapret.nix"
"${self}/s0meMiniPC-nix/services/zerotier.nix" "${self}/s0meMiniPC-nix/services/zerotier.nix"
"${self}/s0meMiniPC-nix/services/usbmuxd.nix" "${self}/s0meMiniPC-nix/services/usbmuxd.nix"
"${self}/s0meMiniPC-nix/services/irqbalance.nix" "${self}/s0meMiniPC-nix/services/irqbalance.nix"
"${self}/s0meMiniPC-nix/services/forgejo.nix" "${self}/s0meMiniPC-nix/services/forgejo.nix"
"${self}/s0meMiniPC-nix/services/privatebin.nix" "${self}/s0meMiniPC-nix/services/privatebin.nix"
"${self}/s0meMiniPC-nix/services/homepage.nix" "${self}/s0meMiniPC-nix/services/homepage.nix"
"${self}/s0meMiniPC-nix/services/zitadel.nix" "${self}/s0meMiniPC-nix/services/zitadel.nix"
"${self}/s0meMiniPC-nix/sops/defaults.nix" "${self}/s0meMiniPC-nix/sops/defaults.nix"
"${self}/s0meMiniPC-nix/sops/secrets.nix" "${self}/s0meMiniPC-nix/sops/secrets.nix"
"${self}/hand7s/stylix/base16Scheme.nix" "${self}/hand7s/stylix/base16Scheme.nix"
"${self}/hand7s/stylix/cursor.nix" "${self}/hand7s/stylix/cursor.nix"
"${self}/hand7s/stylix/defaults.nix" "${self}/hand7s/stylix/defaults.nix"
"${self}/hand7s/stylix/fonts.nix" "${self}/hand7s/stylix/fonts.nix"
"${self}/hand7s/stylix/image.nix" "${self}/hand7s/stylix/image.nix"
"${self}/s0meMiniPC-nix/system/name.nix" "${self}/s0meMiniPC-nix/system/name.nix"
"${self}/s0meMiniPC-nix/system/stateVersion.nix" "${self}/s0meMiniPC-nix/system/stateVersion.nix"
"${self}/s0meMiniPC-nix/systemd/oomd.nix" "${self}/s0meMiniPC-nix/systemd/oomd.nix"
"${self}/s0meMiniPC-nix/systemd/slices/system-slice.nix" "${self}/s0meMiniPC-nix/systemd/slices/system-slice.nix"
"${self}/s0meMiniPC-nix/systemd/slices/user-slice.nix" "${self}/s0meMiniPC-nix/systemd/slices/user-slice.nix"
"${self}/s0meMiniPC-nix/systemd/slices/root-slice.nix" "${self}/s0meMiniPC-nix/systemd/slices/root-slice.nix"
"${self}/s0meMiniPC-nix/time/timeZone.nix" "${self}/s0meMiniPC-nix/time/timeZone.nix"
"${self}/s0meMiniPC-nix/users/users/hand7s.nix" "${self}/s0meMiniPC-nix/users/users/hand7s.nix"
"${self}/s0meMiniPC-nix/users/users/root.nix" "${self}/s0meMiniPC-nix/users/users/root.nix"
"${self}/s0meMiniPC-nix/users/mutableUsers.nix" "${self}/s0meMiniPC-nix/users/mutableUsers.nix"
"${self}/s0meMiniPC-nix/virtualisation/docker.nix" "${self}/s0meMiniPC-nix/virtualisation/docker.nix"
]; ];
} }

View file

@ -1,39 +1,39 @@
{ {
disko = { disko = {
devices = { devices = {
disk = { disk = {
main = { main = {
device = "/dev/disk/by-id/ata-EAGET_SSD_256GB_EAGET20250505V00003"; device = "/dev/disk/by-id/ata-EAGET_SSD_256GB_EAGET20250505V00003";
type = "disk"; type = "disk";
content = { content = {
type = "gpt"; type = "gpt";
partitions = { partitions = {
ESP = { ESP = {
type = "EF00"; type = "EF00";
size = "1024M"; size = "1024M";
name = "boot"; name = "boot";
content = { content = {
type = "filesystem"; type = "filesystem";
format = "vfat"; format = "vfat";
mountpoint = "/boot"; mountpoint = "/boot";
mountOptions = [ mountOptions = [
"fmask=0022" "fmask=0022"
"dmask=0022" "dmask=0022"
]; ];
}; };
}; };
root = { root = {
size = "100%"; size = "100%";
content = { content = {
type = "lvm_pv"; type = "lvm_pv";
vg = "pool"; vg = "pool";
};
};
};
};
}; };
};
}; };
};
}; };
};
}; };
};
} }

View file

@ -1,51 +1,51 @@
{ {
disko = { disko = {
devices = { devices = {
lvm_vg = { lvm_vg = {
pool = { pool = {
type = "lvm_vg"; type = "lvm_vg";
lvs = { lvs = {
root = { root = {
size = "100%"; size = "100%";
content = { content = {
type = "btrfs"; type = "btrfs";
extraArgs = [ extraArgs = [
"-f" "-f"
]; ];
subvolumes = { subvolumes = {
"/root" = { "/root" = {
mountpoint = "/"; mountpoint = "/";
mountOptions = [ mountOptions = [
"compress=zstd" "compress=zstd"
"noatime" "noatime"
"discard=async" "discard=async"
]; ];
}; };
"/home" = { "/home" = {
mountpoint = "/home"; mountpoint = "/home";
mountOptions = [ mountOptions = [
"compress=zstd" "compress=zstd"
"noatime" "noatime"
"discard=async" "discard=async"
]; ];
}; };
"/nix" = { "/nix" = {
mountpoint = "/nix"; mountpoint = "/nix";
mountOptions = [ mountOptions = [
"compress=zstd" "compress=zstd"
"noatime" "noatime"
"discard=async" "discard=async"
]; ];
}; };
};
};
};
};
}; };
};
}; };
};
}; };
};
}; };
};
} }

View file

@ -1,14 +1,14 @@
{ {
pkgs, pkgs,
lib, lib,
... ...
}: { }: {
environment = { environment = {
systemPackages = with pkgs; [ systemPackages = with pkgs; [
(lib.hiPrio uutils-coreutils-noprefix) (lib.hiPrio uutils-coreutils-noprefix)
uutils-findutils uutils-findutils
uutils-diffutils uutils-diffutils
home-manager home-manager
]; ];
}; };
} }

View file

@ -1,19 +1,19 @@
{config, ...}: { {config, ...}: {
environment = { environment = {
variables = { variables = {
AMD_VULKAN_ICD = "RADV"; AMD_VULKAN_ICD = "RADV";
HOSTNAME = config.networking.hostName; HOSTNAME = config.networking.hostName;
QT_QPA_PLATFORM = "wayland"; QT_QPA_PLATFORM = "wayland";
SDL_VIDEODRIVER = "wayland"; SDL_VIDEODRIVER = "wayland";
CLUTTER_BACKEND = "wayland"; CLUTTER_BACKEND = "wayland";
GDK_BACKEND = "wayland"; GDK_BACKEND = "wayland";
NIXPKGS_ALLOW_UNFREE = "1"; NIXPKGS_ALLOW_UNFREE = "1";
NIXPKGS_ALLOW_INSECURE = "1"; NIXPKGS_ALLOW_INSECURE = "1";
NIXOS_OZONE_WL = "1"; NIXOS_OZONE_WL = "1";
GRIMBLAST_HIDE_CURSOR = "0"; GRIMBLAST_HIDE_CURSOR = "0";
TERM = "xterm-256color"; TERM = "xterm-256color";
}; };
enableAllTerminfo = true; enableAllTerminfo = true;
}; };
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
hardware = { hardware = {
enableRedistributableFirmware = true; enableRedistributableFirmware = true;
cpu = { cpu = {
intel = { intel = {
updateMicrocode = true; updateMicrocode = true;
}; };
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
hardware = { hardware = {
graphics = { graphics = {
enable = true; enable = true;
enable32Bit = true; enable32Bit = true;
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
zramSwap = { zramSwap = {
enable = true; enable = true;
algorithm = "zstd"; algorithm = "zstd";
priority = 100; priority = 100;
memoryPercent = 100; memoryPercent = 100;
}; };
} }

View file

@ -1,30 +1,30 @@
{ {
inputs, inputs,
self, self,
... ...
}: { }: {
home-manager = { home-manager = {
users = { users = {
hand7s = { hand7s = {
imports = [ imports = [
"${self}/hand7s/" "${self}/hand7s/"
inputs.spicetify-nix.homeManagerModules.default inputs.spicetify-nix.homeManagerModules.default
inputs.hyprland.homeManagerModules.default inputs.hyprland.homeManagerModules.default
inputs.chaotic.homeManagerModules.default inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops inputs.sops-nix.homeManagerModules.sops
inputs.nix-index-database.homeModules.nix-index inputs.nix-index-database.homeModules.nix-index
]; ];
}; };
};
backupFileExtension = "force";
extraSpecialArgs = {
inherit
inputs
self
;
};
}; };
backupFileExtension = "force";
extraSpecialArgs = {
inherit
inputs
self
;
};
};
} }

View file

@ -1,9 +1,9 @@
{...}: { {...}: {
i18n = { i18n = {
defaultLocale = "en_US.UTF-8"; defaultLocale = "en_US.UTF-8";
supportedLocales = [ supportedLocales = [
"en_US.UTF-8/UTF-8" "en_US.UTF-8/UTF-8"
"ru_RU.UTF-8/UTF-8" "ru_RU.UTF-8/UTF-8"
]; ];
}; };
} }

View file

@ -1,10 +1,10 @@
{lib, ...}: { {lib, ...}: {
networking = { networking = {
useDHCP = lib.mkDefault true; useDHCP = lib.mkDefault true;
dhcpcd = { dhcpcd = {
enable = true; enable = true;
persistent = false; persistent = false;
wait = "any"; wait = "any";
};
}; };
};
} }

View file

@ -1,26 +1,26 @@
{...}: { {...}: {
networking = { networking = {
firewall = { firewall = {
allowPing = true; allowPing = true;
enable = true; enable = true;
checkReversePath = false; checkReversePath = false;
allowedUDPPorts = [ allowedUDPPorts = [
80 80
8080 8080
8443 8443
53350 53350
53351 53351
53353 53353
]; ];
allowedTCPPorts = [ allowedTCPPorts = [
80 80
8080 8080
8443 8443
53350 53350
53351 53351
53353 53353
]; ];
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
networking = { networking = {
hostId = "5c79d46a"; hostId = "5c79d46a";
}; };
} }

View file

@ -1,5 +1,5 @@
{...}: { {...}: {
networking = { networking = {
hostName = "s0meMiniPC-nix"; hostName = "s0meMiniPC-nix";
}; };
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
networking = { networking = {
hosts = { hosts = {
# nope # nope
};
}; };
};
} }

View file

@ -1,29 +1,29 @@
{...}: { {...}: {
networking = { networking = {
firewall = { firewall = {
interfaces = { interfaces = {
wt0 = { wt0 = {
allowedUDPPorts = [ allowedUDPPorts = [
25 25
6969 6969
8080 8080
8443 8443
53350 53350
53351 53351
53352 53352
]; ];
allowedTCPPorts = [ allowedTCPPorts = [
25 25
6969 6969
8080 8080
8443 8443
53350 53350
53351 53351
53352 53352
]; ];
};
};
}; };
};
}; };
};
} }

View file

@ -1,29 +1,29 @@
{...}: { {...}: {
networking = { networking = {
nameservers = [ nameservers = [
# cf dns # cf dns
"1.1.1.1" "1.1.1.1"
"1.0.0.1" "1.0.0.1"
"2606:4700:4700::1111" "2606:4700:4700::1111"
"2606:4700:4700::1001" "2606:4700:4700::1001"
# google dns # google dns
"8.8.8.8" "8.8.8.8"
"8.8.4.4" "8.8.4.4"
"2001:4860:4860::8888" "2001:4860:4860::8888"
"2001:4860:4860::8844" "2001:4860:4860::8844"
# q9 dns # q9 dns
"9.9.9.9" "9.9.9.9"
"149.112.112.112" "149.112.112.112"
"2620:fe::fe" "2620:fe::fe"
"2620:fe::9" "2620:fe::9"
# open dns # open dns
"208.67.222.222" "208.67.222.222"
"208.67.220.220" "208.67.220.220"
"2620:119:35::35" "2620:119:35::35"
"2620:119:53::53" "2620:119:53::53"
]; ];
}; };
} }

View file

@ -1,9 +1,9 @@
{...}: { {...}: {
networking = { networking = {
networkmanager = { networkmanager = {
enable = false; enable = false;
}; };
useNetworkd = true; useNetworkd = true;
}; };
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
networking = { networking = {
timeServers = [ timeServers = [
"0.nixos.pool.ntp.org" "0.nixos.pool.ntp.org"
"1.nixos.pool.ntp.org" "1.nixos.pool.ntp.org"
"2.nixos.pool.ntp.org" "2.nixos.pool.ntp.org"
"3.nixos.pool.ntp.org" "3.nixos.pool.ntp.org"
]; ];
}; };
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
networking = { networking = {
wireguard = { wireguard = {
enable = true; enable = true;
};
}; };
};
} }

View file

@ -1,5 +1,5 @@
{pkgs, ...}: { {pkgs, ...}: {
nix = { nix = {
package = pkgs.nixVersions.latest; package = pkgs.nixVersions.latest;
}; };
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
sandbox = true; sandbox = true;
allowed-users = [ allowed-users = [
"@wheel" "@wheel"
]; ];
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;
};
}; };
};
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
experimental-features = [ experimental-features = [
"nix-command" "nix-command"
"flakes" "flakes"
]; ];
};
}; };
};
} }

View file

@ -1,19 +1,19 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
substituters = [ substituters = [
# cache.nixos.org # cache.nixos.org
"https://cache.nixos.org" "https://cache.nixos.org"
# cache.garnix.org # cache.garnix.org
"https://cache.garnix.io" "https://cache.garnix.io"
# cachix # cachix
"https://nix-community.cachix.org/" "https://nix-community.cachix.org/"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
"https://ags.cachix.org" "https://ags.cachix.org"
"https://hyprland.cachix.org" "https://hyprland.cachix.org"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
"https://colmena.cachix.org" "https://colmena.cachix.org"
]; ];
};
}; };
};
} }

View file

@ -1,19 +1,19 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
trusted-public-keys = [ trusted-public-keys = [
# cache.nixos.org # cache.nixos.org
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
# cache.garnix.io # cache.garnix.io
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g=" "cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
# cachix.org # cachix.org
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
"ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8=" "ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
"colmena.cachix.org-1:7BzpDnjjH8ki2CT3f6GdOk7QAzPOl+1t3LvTLXqYcSg=" "colmena.cachix.org-1:7BzpDnjjH8ki2CT3f6GdOk7QAzPOl+1t3LvTLXqYcSg="
]; ];
};
}; };
};
} }

View file

@ -1,9 +1,9 @@
{...}: { {...}: {
nix = { nix = {
settings = { settings = {
trusted-users = [ trusted-users = [
"@wheel" "@wheel"
]; ];
};
}; };
};
} }

View file

@ -1,8 +1,8 @@
{...}: { {...}: {
nixpkgs = { nixpkgs = {
config = { config = {
allowUnfree = true; allowUnfree = true;
allowBroken = true; allowBroken = true;
};
}; };
};
} }

View file

@ -1,6 +1,6 @@
{...}: { {...}: {
nixpkgs = { nixpkgs = {
overlays = [ overlays = [
]; ];
}; };
} }

View file

@ -1,6 +1,6 @@
{...}: { {...}: {
nixpkgs = { nixpkgs = {
system = "x86_64-linux"; system = "x86_64-linux";
hostPlatform = "x86_64-linux"; hostPlatform = "x86_64-linux";
}; };
} }

View file

@ -1,12 +1,12 @@
{...}: { {...}: {
programs = { programs = {
nh = { nh = {
enable = true; enable = true;
clean = { clean = {
enable = true; enable = true;
dates = "weekly"; dates = "weekly";
extraArgs = "--keep 2 --keep-since 2d"; extraArgs = "--keep 2 --keep-since 2d";
}; };
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
programs = { programs = {
ssh = { ssh = {
startAgent = true; startAgent = true;
};
}; };
};
} }

View file

@ -1,10 +1,10 @@
{...}: { {...}: {
security = { security = {
polkit = { polkit = {
enable = true; enable = true;
adminIdentities = [ adminIdentities = [
"unix-group:wheel" "unix-group:wheel"
]; ];
};
}; };
};
} }

View file

@ -1,7 +1,7 @@
{...}: { {...}: {
security = { security = {
rtkit = { rtkit = {
enable = true; enable = true;
};
}; };
};
} }

Some files were not shown because too many files have changed in this diff Show more