init
This commit is contained in:
commit
b6cdc78668
210 changed files with 9929 additions and 0 deletions
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
s0melapt0p-nix/sops
|
||||||
|
s0men0de-nix/sops
|
||||||
|
s0mePC-nix/sops
|
||||||
|
.sops.yaml
|
||||||
|
|
||||||
2371
flake.lock
generated
Normal file
2371
flake.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
236
flake.nix
Normal file
236
flake.nix
Normal file
|
|
@ -0,0 +1,236 @@
|
||||||
|
{
|
||||||
|
description = "main flake.";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixos-hardware = {
|
||||||
|
url = "github:nixos/nixos-hardware";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixgl = {
|
||||||
|
url = "github:nix-community/nixGL";
|
||||||
|
};
|
||||||
|
|
||||||
|
nur = {
|
||||||
|
url = "github:nix-community/NUR";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixos-generators = {
|
||||||
|
url = "github:nix-community/nixos-generators";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixos-anywhere = {
|
||||||
|
url = "github:nix-community/nixos-anywhere";
|
||||||
|
};
|
||||||
|
|
||||||
|
impermanence = {
|
||||||
|
url = "github:nix-community/impermanence";
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager/";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
disko = {
|
||||||
|
url = "github:nix-community/disko";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
lanzaboote = {
|
||||||
|
url = "github:nix-community/lanzaboote/v0.4.2";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vscserver = {
|
||||||
|
url = "github:nix-community/nixos-vscode-server";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix-on-droid = {
|
||||||
|
url = "github:nix-community/nix-on-droid/master";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
follows = "home-manager";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
freesm = {
|
||||||
|
url = "github:FreesmTeam/FreesmLauncher";
|
||||||
|
};
|
||||||
|
|
||||||
|
agenix = {
|
||||||
|
url = "github:ryantm/agenix";
|
||||||
|
};
|
||||||
|
|
||||||
|
chaotic = {
|
||||||
|
url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix-darwin = {
|
||||||
|
url = "github:LnL7/nix-darwin/master";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nix-homebrew = {
|
||||||
|
url = "github:zhaofengli-wip/nix-homebrew";
|
||||||
|
};
|
||||||
|
|
||||||
|
homebrew-core = {
|
||||||
|
url = "github:homebrew/homebrew-core";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
homebrew-cask = {
|
||||||
|
url = "github:homebrew/homebrew-cask";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
homebrew-bundle = {
|
||||||
|
url = "github:homebrew/homebrew-bundle";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
sops-nix = {
|
||||||
|
url = "github:Mic92/sops-nix";
|
||||||
|
};
|
||||||
|
|
||||||
|
stylix = {
|
||||||
|
url = "github:danth/stylix";
|
||||||
|
};
|
||||||
|
|
||||||
|
ayugram-desktop = {
|
||||||
|
url = "github:ndfined-crp/ayugram-desktop/";
|
||||||
|
};
|
||||||
|
|
||||||
|
hyprland = {
|
||||||
|
url = "github:hyprwm/Hyprland";
|
||||||
|
};
|
||||||
|
|
||||||
|
hyprland-plugins = {
|
||||||
|
url = "github:hyprwm/hyprland-plugins";
|
||||||
|
inputs = {
|
||||||
|
hyprland = {
|
||||||
|
follows = "hyprland";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
hyprpanel = {
|
||||||
|
url = "github:Jas-SinghFSU/HyprPanel";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spicetify-nix = {
|
||||||
|
url = "github:Gerg-L/spicetify-nix";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
zen-browser = {
|
||||||
|
url = "github:youwen5/zen-browser-flake";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs = {
|
||||||
|
follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = {
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
home-manager,
|
||||||
|
...
|
||||||
|
} @ inputs: {
|
||||||
|
homeConfigurations = {
|
||||||
|
hand7s = home-manager.lib.homeManagerConfiguration {
|
||||||
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
};
|
||||||
|
|
||||||
|
modules = [
|
||||||
|
./hand7s/standalone.nix
|
||||||
|
inputs.stylix.homeManagerModules.stylix
|
||||||
|
inputs.chaotic.homeManagerModules.default
|
||||||
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
inputs.hyprpanel.homeManagerModules.hyprpanel
|
||||||
|
inputs.spicetify-nix.homeManagerModules.default
|
||||||
|
inputs.hyprland.homeManagerModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixosConfigurations = {
|
||||||
|
s0mePC-nix = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
./s0mePC-nix/default.nix
|
||||||
|
./s0mePC-nix/disko.nix
|
||||||
|
inputs.chaotic.nixosModules.default
|
||||||
|
inputs.stylix.nixosModules.stylix
|
||||||
|
inputs.sops-nix.nixosModules.sops
|
||||||
|
inputs.disko.nixosModules.disko
|
||||||
|
inputs.lanzaboote.nixosModules.lanzaboote
|
||||||
|
inputs.home-manager.nixosModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
s0melapt0p-nix = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
./s0melapt0p-nix/default.nix
|
||||||
|
./s0melapt0p-nix/disko.nix
|
||||||
|
inputs.chaotic.nixosModules.default
|
||||||
|
inputs.stylix.nixosModules.stylix
|
||||||
|
inputs.sops-nix.nixosModules.sops
|
||||||
|
inputs.disko.nixosModules.disko
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
inputs.lanzaboote.nixosModules.lanzaboote
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
49
hand7s/default.nix
Normal file
49
hand7s/default.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./fonts/fonts.nix
|
||||||
|
./options/gui.nix
|
||||||
|
|
||||||
|
./wayland/hyprland.nix
|
||||||
|
./wayland/river.nix
|
||||||
|
./wayland/sway.nix
|
||||||
|
|
||||||
|
./home/defaults.nix
|
||||||
|
./home/gui.nix
|
||||||
|
./home/keyboard.nix
|
||||||
|
./home/packages.nix
|
||||||
|
./home/shellAliases.nix
|
||||||
|
|
||||||
|
./nixpkgs/config.nix
|
||||||
|
./nixpkgs/overlays.nix
|
||||||
|
|
||||||
|
./services/hypridle.nix
|
||||||
|
./services/swayidle.nix
|
||||||
|
|
||||||
|
./systemd/hyprpanel-service.nix
|
||||||
|
./systemd/hyprpolkitagent-service.nix
|
||||||
|
./systemd/yambar-service.nix
|
||||||
|
|
||||||
|
./programs/bat.nix
|
||||||
|
./programs/eza.nix
|
||||||
|
./programs/fish.nix
|
||||||
|
./programs/fzf.nix
|
||||||
|
./programs/ghostty.nix
|
||||||
|
./programs/git.nix
|
||||||
|
./programs/mpv.nix
|
||||||
|
./programs/helix.nix
|
||||||
|
./programs/index.nix
|
||||||
|
./programs/obs-studio.nix
|
||||||
|
./programs/starship.nix
|
||||||
|
./programs/firefox.nix
|
||||||
|
./programs/swaylock.nix
|
||||||
|
./programs/yazi.nix
|
||||||
|
./programs/zoxide.nix
|
||||||
|
./programs/chrome.nix
|
||||||
|
./programs/fuzzel.nix
|
||||||
|
./programs/hyprlock.nix
|
||||||
|
./programs/hyprpanel.nix
|
||||||
|
./programs/spicetify.nix
|
||||||
|
./programs/vscode.nix
|
||||||
|
./programs/yambar.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
9
hand7s/fonts/fonts.nix
Normal file
9
hand7s/fonts/fonts.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
fonts = {
|
||||||
|
fontconfig = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
hand7s/gtk/gtk.nix
Normal file
12
hand7s/gtk/gtk.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
iconTheme = {
|
||||||
|
name = "Whitesur-icon-theme";
|
||||||
|
package = pkgs.whitesur-icon-theme;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
9
hand7s/home/defaults.nix
Normal file
9
hand7s/home/defaults.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home = {
|
||||||
|
stateVersion = "24.11";
|
||||||
|
username = "hand7s";
|
||||||
|
homeDirectory = "/home/hand7s";
|
||||||
|
};
|
||||||
|
}
|
||||||
26
hand7s/home/gui.nix
Normal file
26
hand7s/home/gui.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
{
|
||||||
|
osConfig,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:{
|
||||||
|
home = {
|
||||||
|
gui = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
osConfig.networking.hostName == "s0mePC-nix" || osConfig.networking.hostName == "s0melapt0p-nix"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
|
||||||
|
sessionType = if (
|
||||||
|
osConfig.networking.hostName == "s0mePC-nix"
|
||||||
|
) then (
|
||||||
|
"Hyprland"
|
||||||
|
) else if (
|
||||||
|
osConfig.networking.hostName == "s0melapt0p-nix"
|
||||||
|
) then (
|
||||||
|
"Sway"
|
||||||
|
) else (
|
||||||
|
"None"
|
||||||
|
);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
13
hand7s/home/keyboard.nix
Normal file
13
hand7s/home/keyboard.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home = {
|
||||||
|
keyboard = {
|
||||||
|
variant = "qwerty";
|
||||||
|
layout = "us, ru";
|
||||||
|
options = [
|
||||||
|
"grp:caps_toggle"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
49
hand7s/home/packages.nix
Normal file
49
hand7s/home/packages.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
osConfig,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
freesm-launcher = inputs.freesm.packages.${pkgs.system}.freesmlauncher;
|
||||||
|
in {
|
||||||
|
home = {
|
||||||
|
packages = with pkgs; [
|
||||||
|
gh
|
||||||
|
sd
|
||||||
|
nvd
|
||||||
|
git
|
||||||
|
dust
|
||||||
|
procs
|
||||||
|
gping
|
||||||
|
dconf
|
||||||
|
tokei
|
||||||
|
ifuse
|
||||||
|
trippy
|
||||||
|
bottom
|
||||||
|
kubectl
|
||||||
|
yt-dlp
|
||||||
|
ripgrep
|
||||||
|
tty-clock
|
||||||
|
freesm-launcher
|
||||||
|
libimobiledevice
|
||||||
|
nix-output-monitor
|
||||||
|
] ++lib.optionals (
|
||||||
|
osConfig.networking.hostName == "s0mePC-nix"
|
||||||
|
) [
|
||||||
|
|
||||||
|
tetrio-desktop
|
||||||
|
netbird-ui
|
||||||
|
thunderbird
|
||||||
|
mindustry
|
||||||
|
qbittorrent-enhanced
|
||||||
|
|
||||||
|
] ++ lib.optionals (
|
||||||
|
osConfig.networking.hostName == "s0melapt0p-nix"
|
||||||
|
) [
|
||||||
|
iwgtk
|
||||||
|
brightnessctl
|
||||||
|
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
11
hand7s/home/shellAliases.nix
Normal file
11
hand7s/home/shellAliases.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home = {
|
||||||
|
shellAliases = {
|
||||||
|
e = "eza";
|
||||||
|
et = "eza -T";
|
||||||
|
k = "kubectl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
8
hand7s/nix/package.nix
Normal file
8
hand7s/nix/package.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
package = pkgs.nixVersions.latest;
|
||||||
|
};
|
||||||
|
}
|
||||||
21
hand7s/nix/settings/substituters.nix
Normal file
21
hand7s/nix/settings/substituters.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
substituters = [
|
||||||
|
# cache.nixos.org
|
||||||
|
"https://nixos-cache-proxy.cofob.dev"
|
||||||
|
"https://cache.nixos.org"
|
||||||
|
# cache.garnix.org
|
||||||
|
"https://cache.garnix.io"
|
||||||
|
# cachix
|
||||||
|
"https://nix-community.cachix.org/"
|
||||||
|
"https://chaotic-nyx.cachix.org/"
|
||||||
|
"https://ags.cachix.org"
|
||||||
|
"https://hyprland.cachix.org"
|
||||||
|
"https://chaotic-nyx.cachix.org/"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
hand7s/nix/settings/trusted-public-keys.nix
Normal file
20
hand7s/nix/settings/trusted-public-keys.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
trusted-public-keys = [
|
||||||
|
# cache.nixos.org
|
||||||
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
|
# cache.garnix.io
|
||||||
|
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||||
|
# cachix.org
|
||||||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
|
||||||
|
"ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8="
|
||||||
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||||
|
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hand7s/nixpkgs/config.nix
Normal file
10
hand7s/nixpkgs/config.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs = {
|
||||||
|
config = {
|
||||||
|
allowBroken = true;
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hand7s/nixpkgs/overlays.nix
Normal file
10
hand7s/nixpkgs/overlays.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs = {
|
||||||
|
overlays = [
|
||||||
|
inputs.hyprpanel.overlay
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
98
hand7s/options/gui.nix
Normal file
98
hand7s/options/gui.nix
Normal file
|
|
@ -0,0 +1,98 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.home.gui;
|
||||||
|
ayugram-desktop = inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop;
|
||||||
|
in {
|
||||||
|
options.home.gui = {
|
||||||
|
enable = lib.mkEnableOption ''
|
||||||
|
Enabling this option will allow you to activate GUI Software,
|
||||||
|
that exist in my home-manager setup. Enabling this, as you can
|
||||||
|
see, is depending on hostname of my system. To bypass this,
|
||||||
|
either delete expression in `home.nix`, or change hostname
|
||||||
|
to yours.
|
||||||
|
'';
|
||||||
|
|
||||||
|
sessionType = lib.mkOption {
|
||||||
|
type = lib.types.enum [
|
||||||
|
"Sway"
|
||||||
|
"River"
|
||||||
|
"Hyprland"
|
||||||
|
"None"
|
||||||
|
];
|
||||||
|
default = "None";
|
||||||
|
description = ''
|
||||||
|
This option allows to choose current desktop session. All
|
||||||
|
three: riverwm, sway and Hyprland has their own config. Almost
|
||||||
|
all of them - their respectful software. WIP.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
home = {
|
||||||
|
packages = with pkgs; [
|
||||||
|
vesktop
|
||||||
|
(discord.override {
|
||||||
|
withVencord = true;
|
||||||
|
withOpenASAR = false;
|
||||||
|
})
|
||||||
|
|
||||||
|
ayugram-desktop
|
||||||
|
element-desktop
|
||||||
|
|
||||||
|
obsidian
|
||||||
|
pwvucontrol
|
||||||
|
easyeffects
|
||||||
|
hyprpolkitagent
|
||||||
|
parsec-bin
|
||||||
|
bitwarden
|
||||||
|
mindustry
|
||||||
|
playerctl
|
||||||
|
lan-mouse
|
||||||
|
nekoray
|
||||||
|
] ++ lib.optionals (
|
||||||
|
cfg.sessionType == "Sway"
|
||||||
|
) [
|
||||||
|
swaykbdd
|
||||||
|
sway-contrib.grimshot
|
||||||
|
sway-contrib.inactive-windows-transparency
|
||||||
|
autotiling-rs
|
||||||
|
sway-audio-idle-inhibit
|
||||||
|
] ++ lib.optionals (
|
||||||
|
cfg.sessionType == "River"
|
||||||
|
) [
|
||||||
|
wayshot
|
||||||
|
waylock
|
||||||
|
wayidle
|
||||||
|
] ++ lib.optionals (
|
||||||
|
cfg.sessionType == "Hyprland"
|
||||||
|
) [
|
||||||
|
hyprpanel
|
||||||
|
grimblast
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
chromium.enable = true;
|
||||||
|
spicetify.enable = true;
|
||||||
|
vscode.enable = true;
|
||||||
|
fuzzel.enable = true;
|
||||||
|
ghostty.enable = true;
|
||||||
|
firefox.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services = with lib.mkDefault; {
|
||||||
|
hyprpaper.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [
|
||||||
|
s0me1newithhan7ds
|
||||||
|
# aka hand7s
|
||||||
|
];
|
||||||
|
}
|
||||||
12
hand7s/programs/bat.nix
Normal file
12
hand7s/programs/bat.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
bat = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
pager = "less -FR";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
22
hand7s/programs/chrome.nix
Normal file
22
hand7s/programs/chrome.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
chromium = {
|
||||||
|
package = (
|
||||||
|
pkgs.google-chrome.override {
|
||||||
|
commandLineArgs = [
|
||||||
|
"--enable-features=AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE"
|
||||||
|
"--enable-features=VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport"
|
||||||
|
"--enable-features=UseMultiPlaneFormatForHardwareVideo"
|
||||||
|
"--enable-features=SkiaGraphite"
|
||||||
|
"--enable-unsafe-webgpu"
|
||||||
|
"--ignore-gpu-blocklist"
|
||||||
|
"--enable-zero-copy"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
hand7s/programs/eza.nix
Normal file
12
hand7s/programs/eza.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
eza = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
git = true;
|
||||||
|
icons = "always";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
13
hand7s/programs/firefox.nix
Normal file
13
hand7s/programs/firefox.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
zen-browser = inputs.zen-browser.packages.${pkgs.system}.default;
|
||||||
|
in {
|
||||||
|
programs = {
|
||||||
|
firefox = {
|
||||||
|
package = zen-browser;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
15
hand7s/programs/fish.nix
Normal file
15
hand7s/programs/fish.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
generateCompletions = true;
|
||||||
|
functions = {
|
||||||
|
fish_greeting = {
|
||||||
|
body = "echo ' ~ 𝑠𝑛𝑜𝑤𝑦 𝑝𝑙𝑎𝑐𝑒, 𝑓𝑢𝑙𝑙 𝑜𝑓 𝑓𝑙𝑎𝑘𝑒𝑠! '";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
21
hand7s/programs/fuzzel.nix
Normal file
21
hand7s/programs/fuzzel.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
fuzzel = {
|
||||||
|
settings = {
|
||||||
|
main = {
|
||||||
|
terminal = "${pkgs.ghostty}/bin/ghostty";
|
||||||
|
layer = "overlay";
|
||||||
|
prompt = " > ";
|
||||||
|
};
|
||||||
|
|
||||||
|
border = {
|
||||||
|
width = "2";
|
||||||
|
radius = "10";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
13
hand7s/programs/fzf.nix
Normal file
13
hand7s/programs/fzf.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
fzf = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
tmux = {
|
||||||
|
enableShellIntegration = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
24
hand7s/programs/ghostty.nix
Normal file
24
hand7s/programs/ghostty.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
ghostty = {
|
||||||
|
enableFishIntegration = true;
|
||||||
|
installBatSyntax = true;
|
||||||
|
settings = {
|
||||||
|
title = "spooky scary tty";
|
||||||
|
|
||||||
|
command = "${pkgs.fish}/bin/fish --login --interactive";
|
||||||
|
|
||||||
|
confirm-close-surface = false;
|
||||||
|
|
||||||
|
keybind = [
|
||||||
|
"ctrl+shift+d=new_split:right"
|
||||||
|
"ctrl+shift+h=goto_split:left"
|
||||||
|
"ctrl+shift+l=goto_split:right"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
hand7s/programs/git.nix
Normal file
11
hand7s/programs/git.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userEmail = "117505144+s0me1newithhand7s@users.noreply.github.com";
|
||||||
|
userName = "s0me1newithhand7s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
63
hand7s/programs/helix.nix
Normal file
63
hand7s/programs/helix.nix
Normal file
|
|
@ -0,0 +1,63 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
helix = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
extraPackages = with pkgs; [
|
||||||
|
nixd
|
||||||
|
nixfmt-rfc-style
|
||||||
|
];
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
editor = {
|
||||||
|
line-number = "relative";
|
||||||
|
cursorline = true;
|
||||||
|
lsp = {
|
||||||
|
display-messages = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
languages = {
|
||||||
|
language-servers = {
|
||||||
|
nixd = {
|
||||||
|
command = "${pkgs.nixd}/bin/nixd";
|
||||||
|
args = [
|
||||||
|
"--inlay-hints=true"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
language = [
|
||||||
|
{
|
||||||
|
name = "nix";
|
||||||
|
comment-token = "#";
|
||||||
|
injection-regex = "nix";
|
||||||
|
indent = {
|
||||||
|
tab-width = 4;
|
||||||
|
unit = " ";
|
||||||
|
};
|
||||||
|
|
||||||
|
formatter = {
|
||||||
|
command = "${pkgs.nixfmt-rfc-style}/bin/nixfmt-rfc-style";
|
||||||
|
args = [
|
||||||
|
"--indent=4"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
file-types = [
|
||||||
|
"nix"
|
||||||
|
];
|
||||||
|
|
||||||
|
language-servers = [
|
||||||
|
"nixd"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
94
hand7s/programs/hyprlock.nix
Normal file
94
hand7s/programs/hyprlock.nix
Normal file
|
|
@ -0,0 +1,94 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
hyprlock = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
hide_cursor = true;
|
||||||
|
ignore_empty_input = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
label = [
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "$TIME";
|
||||||
|
text_align = "center";
|
||||||
|
color = config.lib.stylix.colors.base01;
|
||||||
|
font_size = 48;
|
||||||
|
font_family = "Nerd Hack Font";
|
||||||
|
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 = "Nerd Hack Font";
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
470
hand7s/programs/hyprpanel.nix
Normal file
470
hand7s/programs/hyprpanel.nix
Normal file
|
|
@ -0,0 +1,470 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
hyprpanel = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
hyprland = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
};
|
||||||
|
|
||||||
|
overwrite = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
};
|
||||||
|
|
||||||
|
overlay = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
layout = {
|
||||||
|
"bar.layouts" = {
|
||||||
|
"*" = {
|
||||||
|
left = [
|
||||||
|
"dashboard"
|
||||||
|
"workspaces"
|
||||||
|
"media"
|
||||||
|
];
|
||||||
|
|
||||||
|
middle = [
|
||||||
|
"clock"
|
||||||
|
"power"
|
||||||
|
];
|
||||||
|
|
||||||
|
right = [
|
||||||
|
"network"
|
||||||
|
"kbinput"
|
||||||
|
"volume"
|
||||||
|
"systray"
|
||||||
|
"notifications"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
scalingPriority = "hyprland";
|
||||||
|
|
||||||
|
tear = false;
|
||||||
|
terminal = "${pkgs.ghostty}/bin/ghostty";
|
||||||
|
dummy = true;
|
||||||
|
|
||||||
|
hyprpanel = {
|
||||||
|
restartAgs = true;
|
||||||
|
restartCommand = "${pkgs.systemd}/bin/systemctl --user restart hyprpanel.service";
|
||||||
|
};
|
||||||
|
|
||||||
|
bar = {
|
||||||
|
autoHide = "never";
|
||||||
|
scrollSpeed = 5;
|
||||||
|
|
||||||
|
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 = "${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-";
|
||||||
|
scrollUp = "${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+";
|
||||||
|
rightClick = "${pkgs.wireplumber}/bin/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 = "${pkgs.hyprland}/bin/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 = "${pkgs.google-chrome}/bin/google-chrome-stable";
|
||||||
|
icon = "";
|
||||||
|
tooltip = "Google Chrome";
|
||||||
|
};
|
||||||
|
|
||||||
|
shortcut2 = {
|
||||||
|
command = "spotify";
|
||||||
|
icon = "";
|
||||||
|
tooltip = "Spotify";
|
||||||
|
};
|
||||||
|
|
||||||
|
shortcut3 = {
|
||||||
|
command = "${pkgs.discord}/bin/discord";
|
||||||
|
icon = "";
|
||||||
|
tooltip = "Discord";
|
||||||
|
};
|
||||||
|
|
||||||
|
shortcut4 = {
|
||||||
|
command = "ayugram-desktop";
|
||||||
|
icon = "";
|
||||||
|
tooltip = "Telegram";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
right = {
|
||||||
|
shortcut1 = {
|
||||||
|
command = "${pkgs.fuzzel}/bin/fuzzel";
|
||||||
|
icon = "";
|
||||||
|
tooltip = "Search";
|
||||||
|
};
|
||||||
|
|
||||||
|
shortcut3 = {
|
||||||
|
command = "sleep 2; ${pkgs.grimblast}/bin/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/pfp.jpg";
|
||||||
|
name = "system";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
media = {
|
||||||
|
displayTime = true;
|
||||||
|
displayTimeTooltip = true;
|
||||||
|
noMediaText = "-";
|
||||||
|
hideAlbum = false;
|
||||||
|
hideAuthor = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
power = {
|
||||||
|
confirmation = true;
|
||||||
|
showLabel = true;
|
||||||
|
logout = "${pkgs.hyprland}hyprctl dispatch exit";
|
||||||
|
reboot = "${pkgs.systemd}/bin/systemctl reboot";
|
||||||
|
shutdown = "${pkgs.systemd}/bin/systemctl poweroff";
|
||||||
|
sleep = "${pkgs.systemd}/bin/systemctl suspend";
|
||||||
|
};
|
||||||
|
|
||||||
|
volume = {
|
||||||
|
raiseMaximumVolume = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
notifications = {
|
||||||
|
active_monitor = true;
|
||||||
|
cache_actions = true;
|
||||||
|
clearDelay = 50;
|
||||||
|
displayedTotal = 5;
|
||||||
|
showActionsOnHover = true;
|
||||||
|
timeout = 5000;
|
||||||
|
};
|
||||||
|
|
||||||
|
theme = {
|
||||||
|
matugen = false;
|
||||||
|
|
||||||
|
matugen_settings = {
|
||||||
|
contrast = 0;
|
||||||
|
mode = "dark";
|
||||||
|
scheme_type = "monochrome";
|
||||||
|
variation = "standard_1";
|
||||||
|
};
|
||||||
|
|
||||||
|
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 = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hand7s/programs/index.nix
Normal file
10
hand7s/programs/index.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
nix-index = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
9
hand7s/programs/mpv.nix
Normal file
9
hand7s/programs/mpv.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
mpv = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
22
hand7s/programs/obs-studio.nix
Normal file
22
hand7s/programs/obs-studio.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
obs-studio = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
plugins = with pkgs.obs-studio-plugins; [
|
||||||
|
wlrobs
|
||||||
|
waveform
|
||||||
|
obs-vkcapture
|
||||||
|
obs-pipewire-audio-capture
|
||||||
|
obs-webkitgtk
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
19
hand7s/programs/spicetify.nix
Normal file
19
hand7s/programs/spicetify.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
spicetify = {
|
||||||
|
enabledExtensions = with inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [
|
||||||
|
adblock
|
||||||
|
hidePodcasts
|
||||||
|
shuffle
|
||||||
|
];
|
||||||
|
|
||||||
|
theme = lib.mkForce inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text;
|
||||||
|
colorScheme = lib.mkForce "Spotify";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
55
hand7s/programs/starship.nix
Normal file
55
hand7s/programs/starship.nix
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
starship = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
settings = {
|
||||||
|
add_newline = true;
|
||||||
|
|
||||||
|
format = ''
|
||||||
|
[╭──╼](bold blue) $hostname $os
|
||||||
|
[┆](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status
|
||||||
|
[╰─>](bold blue)
|
||||||
|
'';
|
||||||
|
|
||||||
|
right_format = ''$cmd_duration ($character) at ❗$time'';
|
||||||
|
|
||||||
|
os = {
|
||||||
|
format = "on [($name $codename$version$edition $symbol )]($style)";
|
||||||
|
style = "bold blue";
|
||||||
|
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)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
17
hand7s/programs/swaylock.nix
Normal file
17
hand7s/programs/swaylock.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
swaylock = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Sway"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
show-failed-attempts = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
45
hand7s/programs/vscode.nix
Normal file
45
hand7s/programs/vscode.nix
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
vscode = {
|
||||||
|
profiles = {
|
||||||
|
default = {
|
||||||
|
extensions = with pkgs.vscode-extensions; [
|
||||||
|
jnoortheen.nix-ide
|
||||||
|
ms-vscode-remote.vscode-remote-extensionpack
|
||||||
|
ms-vsliveshare.vsliveshare
|
||||||
|
redhat.vscode-yaml
|
||||||
|
redhat.ansible
|
||||||
|
];
|
||||||
|
|
||||||
|
userSettings = lib.mkForce {
|
||||||
|
"editor.fontFamily" = "'Hack Nerd Font'";
|
||||||
|
"editor.fontSize" = 16;
|
||||||
|
|
||||||
|
"editor.cursorBlinking" = "smooth";
|
||||||
|
"editor.cursorSmoothCaretAnimation" = "on";
|
||||||
|
"editor.wordWrap" = "on";
|
||||||
|
|
||||||
|
"workbench.colorTheme" = "Blazing Red";
|
||||||
|
"workbench.sideBar.location" = "right";
|
||||||
|
"workbench.activityBar.location" = "top";
|
||||||
|
"workbench.editor.editorActionsLocation" = "titleBar";
|
||||||
|
"workbench.editor.showTabs" = "none";
|
||||||
|
|
||||||
|
"window.menuBarVisibility" = "hidden";
|
||||||
|
|
||||||
|
"files.autoSave" = "afterDelay";
|
||||||
|
|
||||||
|
"[nix]" = {
|
||||||
|
"editor.insertSpaces" = true;
|
||||||
|
"editor.tabSize" = 4;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
1949
hand7s/programs/yambar.nix
Normal file
1949
hand7s/programs/yambar.nix
Normal file
File diff suppressed because it is too large
Load diff
61
hand7s/programs/yazi.nix
Normal file
61
hand7s/programs/yazi.nix
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
yazi = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
shellWrapperName = "yz";
|
||||||
|
settings = {
|
||||||
|
manager = {
|
||||||
|
sort_by = "natural";
|
||||||
|
sort_sensitive = true;
|
||||||
|
sort_reverse = false;
|
||||||
|
sort_translit = true;
|
||||||
|
|
||||||
|
linemode = "size";
|
||||||
|
|
||||||
|
show_hidden = true;
|
||||||
|
show_symlink = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
preview = {
|
||||||
|
tab_size = 4;
|
||||||
|
image_filter = "lanczos3";
|
||||||
|
image_quality = 90;
|
||||||
|
};
|
||||||
|
|
||||||
|
opener = {
|
||||||
|
play = [
|
||||||
|
{
|
||||||
|
run = "${pkgs.mpv}/bin/mpv ''$@''";
|
||||||
|
block = true;
|
||||||
|
for = "unix";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
edit = [
|
||||||
|
{
|
||||||
|
run = "${pkgs.helix}/bin/hx ''$@''";
|
||||||
|
block = true;
|
||||||
|
for = "unix";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
open = [
|
||||||
|
{
|
||||||
|
run = "${pkgs.xdg-utils}/bin/xdg-open ''$@''";
|
||||||
|
block = true;
|
||||||
|
for = "unix";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
input = {
|
||||||
|
cursor_blink = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hand7s/programs/zoxide.nix
Normal file
10
hand7s/programs/zoxide.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
zoxide = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
7
hand7s/qt/qt.nix
Normal file
7
hand7s/qt/qt.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
qt = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
39
hand7s/services/hypridle.nix
Normal file
39
hand7s/services/hypridle.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services = {
|
||||||
|
hypridle = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
before_sleep_cmd = "${pkgs.hyprland}/bin/hyprctl dispatch dpms off";
|
||||||
|
after_sleep_cmd = "${pkgs.hyprland}/bin/hyprctl dispatch dpms on";
|
||||||
|
};
|
||||||
|
|
||||||
|
listener = [
|
||||||
|
{
|
||||||
|
timeout = 300;
|
||||||
|
on-timeout = "${pkgs.brightnessctl}/bin/brightnessctl -s set 10";
|
||||||
|
on-resume = "${pkgs.brightnessctl}/bin/brightnessctl -r";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 600;
|
||||||
|
on-timeout = "${pkgs.hyprlock}/bin/hyprlock";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 900;
|
||||||
|
on-timeout = "${pkgs.systemd}/bin/systemctl suspend";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
49
hand7s/services/swayidle.nix
Normal file
49
hand7s/services/swayidle.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services = {
|
||||||
|
swayidle = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Sway"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
events = [
|
||||||
|
{
|
||||||
|
event = "lock";
|
||||||
|
command = "${pkgs.swaylock}/bin/swaylock";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
event = "before-sleep";
|
||||||
|
command = "${pkgs.sway}/bin/swaymsg 'output * power off'";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
event = "after-resume";
|
||||||
|
command = "${pkgs.sway}/bin/swaymsg 'output * power on'";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
timeouts = [
|
||||||
|
{
|
||||||
|
timeout = 300;
|
||||||
|
command = "${pkgs.brightnessctl}/bin/brightnessctl -s set 10";
|
||||||
|
resumeCommand = "${pkgs.brightnessctl}/bin/brightnessctl -r";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 600;
|
||||||
|
command = "${pkgs.swaylock}/bin/swaylock";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 900;
|
||||||
|
command = "${pkgs.systemd}/bin/systemctl suspend";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
54
hand7s/standalone.nix
Normal file
54
hand7s/standalone.nix
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./fonts/fonts.nix
|
||||||
|
./options/gui.nix
|
||||||
|
|
||||||
|
./wayland/hyprland.nix
|
||||||
|
./wayland/river.nix
|
||||||
|
|
||||||
|
./nix/settings/substituters.nix
|
||||||
|
./nix/settings/trusted-public-keys.nix
|
||||||
|
./nix/package.nix
|
||||||
|
|
||||||
|
./stylix/base16Scheme.nix
|
||||||
|
./stylix/cursor.nix
|
||||||
|
./stylix/defaults.nix
|
||||||
|
./stylix/fonts.nix
|
||||||
|
./stylix/image.nix
|
||||||
|
|
||||||
|
./nixpkgs/config.nix
|
||||||
|
./nixpkgs/overlays.nix
|
||||||
|
|
||||||
|
./home/defaults.nix
|
||||||
|
./home/gui.nix
|
||||||
|
./home/keyboard.nix
|
||||||
|
./home/packages.nix
|
||||||
|
./home/shellAliases.nix
|
||||||
|
|
||||||
|
./services/hypridle.nix
|
||||||
|
|
||||||
|
./systemd/hyprpanel-service.nix
|
||||||
|
./systemd/hyprpolkitagent-service.nix
|
||||||
|
|
||||||
|
./programs/bat.nix
|
||||||
|
./programs/eza.nix
|
||||||
|
./programs/fish.nix
|
||||||
|
./programs/fzf.nix
|
||||||
|
./programs/ghostty.nix
|
||||||
|
./programs/git.nix
|
||||||
|
./programs/helix.nix
|
||||||
|
./programs/index.nix
|
||||||
|
./programs/obs-studio.nix
|
||||||
|
./programs/starship.nix
|
||||||
|
./programs/yazi.nix
|
||||||
|
./programs/zoxide.nix
|
||||||
|
./programs/chrome.nix
|
||||||
|
./programs/fuzzel.nix
|
||||||
|
./programs/hyprlock.nix
|
||||||
|
./programs/hyprpanel.nix
|
||||||
|
./programs/spicetify.nix
|
||||||
|
./programs/vscode.nix
|
||||||
|
./programs/waybar.nix
|
||||||
|
./programs/wlogout.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
34
hand7s/stylix/base16Scheme.nix
Normal file
34
hand7s/stylix/base16Scheme.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
stylix = {
|
||||||
|
base16Scheme = {
|
||||||
|
base00 = "2a1617";
|
||||||
|
base01 = "5d3f3f";
|
||||||
|
base02 = "7a5bab";
|
||||||
|
base03 = "bb9499";
|
||||||
|
base04 = "eea1cf";
|
||||||
|
base05 = "f5dddd";
|
||||||
|
base06 = "ffebff";
|
||||||
|
base07 = "ffede9";
|
||||||
|
base08 = "e36b70";
|
||||||
|
base09 = "ac878e";
|
||||||
|
base0A = "db7356";
|
||||||
|
base0B = "a78897";
|
||||||
|
base0C = "ca7a79";
|
||||||
|
base0D = "b28776";
|
||||||
|
base0E = "d8708b";
|
||||||
|
base0F = "ec6653";
|
||||||
|
base10 = "2a1617";
|
||||||
|
base11 = "2a1617";
|
||||||
|
base12 = "e36b70";
|
||||||
|
base13 = "ac878e";
|
||||||
|
base14 = "a78897";
|
||||||
|
base15 = "ca7a79";
|
||||||
|
base16 = "b28776";
|
||||||
|
base17 = "d8708b";
|
||||||
|
scheme = "hand7s";
|
||||||
|
name = "red_ish";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
hand7s/stylix/cursor.nix
Normal file
11
hand7s/stylix/cursor.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
stylix = {
|
||||||
|
cursor = {
|
||||||
|
name = "Whitesur-cursors";
|
||||||
|
package = pkgs.whitesur-cursors;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
9
hand7s/stylix/defaults.nix
Normal file
9
hand7s/stylix/defaults.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
stylix = {
|
||||||
|
enable = true;
|
||||||
|
autoEnable = true;
|
||||||
|
polarity = "dark";
|
||||||
|
};
|
||||||
|
}
|
||||||
35
hand7s/stylix/fonts.nix
Normal file
35
hand7s/stylix/fonts.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
stylix = {
|
||||||
|
fonts = {
|
||||||
|
sizes = {
|
||||||
|
applications = 10;
|
||||||
|
desktop = 8;
|
||||||
|
popups = 10;
|
||||||
|
terminal = 8;
|
||||||
|
};
|
||||||
|
|
||||||
|
monospace = {
|
||||||
|
package = pkgs.nerd-fonts.roboto-mono;
|
||||||
|
name = "Roboto-Mono Nerd Font";
|
||||||
|
};
|
||||||
|
|
||||||
|
emoji = {
|
||||||
|
package = pkgs.nerd-fonts.symbols-only;
|
||||||
|
name = "Symbols Only Nerd Font";
|
||||||
|
};
|
||||||
|
|
||||||
|
sansSerif = {
|
||||||
|
package = pkgs.nerd-fonts.aurulent-sans-mono;
|
||||||
|
name = "Aurulent Sans Mono Nerd Font";
|
||||||
|
};
|
||||||
|
|
||||||
|
serif = {
|
||||||
|
package = pkgs.nerd-fonts.hack;
|
||||||
|
name = "Hack Nerd Font";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
7
hand7s/stylix/image.nix
Normal file
7
hand7s/stylix/image.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
stylix = {
|
||||||
|
image = ./wallpaper.jpg;
|
||||||
|
};
|
||||||
|
}
|
||||||
BIN
hand7s/stylix/wallpaper.jpg
Normal file
BIN
hand7s/stylix/wallpaper.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.7 MiB |
29
hand7s/systemd/hyprpanel-service.nix
Normal file
29
hand7s/systemd/hyprpanel-service.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
systemd = {
|
||||||
|
user = {
|
||||||
|
services = {
|
||||||
|
hyprpanel = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Hyprpanel service.";
|
||||||
|
WantedBy = "graphical-session.target";
|
||||||
|
};
|
||||||
|
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.hyprpanel}/bin/hyprpanel";
|
||||||
|
Restart = "always";
|
||||||
|
RestartSec = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
Install = {
|
||||||
|
After = "graphical-session.target";
|
||||||
|
ConditionEnvironment = "WAYLAND_DISPLAY";
|
||||||
|
PartOf = "graphical-session.target";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
29
hand7s/systemd/hyprpolkitagent-service.nix
Normal file
29
hand7s/systemd/hyprpolkitagent-service.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
systemd = {
|
||||||
|
user = {
|
||||||
|
services = {
|
||||||
|
hyprpolkitagent = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Hyprpolkitagent service.";
|
||||||
|
WantedBy = "graphical-session.target";
|
||||||
|
};
|
||||||
|
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.hyprpolkitagent}/libexec/hyprpolkitagent";
|
||||||
|
Restart = "always";
|
||||||
|
RestartSec = 10;
|
||||||
|
};
|
||||||
|
|
||||||
|
Install = {
|
||||||
|
After = "graphical-session.target";
|
||||||
|
ConditionEnvironment = "WAYLAND_DISPLAY";
|
||||||
|
PartOf = "graphical-session.target";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
29
hand7s/systemd/yambar-service.nix
Normal file
29
hand7s/systemd/yambar-service.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
systemd = {
|
||||||
|
user = {
|
||||||
|
services = {
|
||||||
|
yambar = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Yambar service.";
|
||||||
|
WantedBy = "graphical-session.target";
|
||||||
|
};
|
||||||
|
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.yambar}/bin/yambar";
|
||||||
|
Restart = "always";
|
||||||
|
RestartSec = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
Install = {
|
||||||
|
After = "graphical-session.target";
|
||||||
|
ConditionEnvironment = "WAYLAND_DISPLAY";
|
||||||
|
PartOf = "graphical-session.target";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
238
hand7s/wayland/hyprland.nix
Normal file
238
hand7s/wayland/hyprland.nix
Normal file
|
|
@ -0,0 +1,238 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
wayland = {
|
||||||
|
windowManager = {
|
||||||
|
hyprland = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Hyprland"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
monitor = ", 2560x1440@165.00Hz, 0x0, 1";
|
||||||
|
|
||||||
|
general = {
|
||||||
|
gaps_in = "5";
|
||||||
|
gaps_out = "20";
|
||||||
|
border_size = "2";
|
||||||
|
layout = "dwindle";
|
||||||
|
|
||||||
|
snap = {
|
||||||
|
enabled = true;
|
||||||
|
window_gap = "5";
|
||||||
|
monitor_gap = "5";
|
||||||
|
border_overlap = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
input = {
|
||||||
|
kb_layout = "us, ru";
|
||||||
|
kb_options = "grp:caps_toggle";
|
||||||
|
|
||||||
|
numlock_by_default = true;
|
||||||
|
follow_mouse = "1";
|
||||||
|
left_handed = true;
|
||||||
|
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;
|
||||||
|
};
|
||||||
|
|
||||||
|
group = {
|
||||||
|
auto_group = true;
|
||||||
|
insert_after_current = true;
|
||||||
|
focus_removed_window = true;
|
||||||
|
drag_into_group = "2";
|
||||||
|
merge_groups_on_drag = true;
|
||||||
|
merge_groups_on_groupbar = true;
|
||||||
|
group_on_movetoworkspace = true;
|
||||||
|
|
||||||
|
groupbar = {
|
||||||
|
enabled = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
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";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
exec-once = [
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hyprpaper.service"
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hypridle.service"
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hyprpolkitagent.service"
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hyprpanel.service"
|
||||||
|
];
|
||||||
|
|
||||||
|
bind = [
|
||||||
|
"ALT, return, exec, ${pkgs.ghostty}/bin/ghostty"
|
||||||
|
"ALT, Q, killactive,"
|
||||||
|
"ALT, S, exec, ${pkgs.fuzzel}/bin/fuzzel"
|
||||||
|
"ALT, F, fullscreen, 0"
|
||||||
|
"ALT, L, exec, ${pkgs.hyprlock}/bin/hyprlock"
|
||||||
|
|
||||||
|
|
||||||
|
"ALT SHIFT, E, exit,"
|
||||||
|
"ALT SHIFT, space, togglefloating, active"
|
||||||
|
"ALT SHIFT, S, exec, ${pkgs.grimblast}/bin/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, 0"
|
||||||
|
"ALT, H, togglespecialworkspace, special"
|
||||||
|
|
||||||
|
"ALT SHIFT, 1, movetoworkspace, 1"
|
||||||
|
"ALT SHIFT, 2, movetoworkspace, 2"
|
||||||
|
"ALT SHIFT, 3, movetoworkspace, 3"
|
||||||
|
"ALT SHIFT, 4, movetoworkspace, 4"
|
||||||
|
"ALT SHIFT, 5, movetoworkspace, 5"
|
||||||
|
"ALT SHIFT, 6, movetoworkspace, 6"
|
||||||
|
"ALT SHIFT, 7, movetoworkspace, 7"
|
||||||
|
"ALT SHIFT, 8, movetoworkspace, 8"
|
||||||
|
"ALT SHIFT, 9, movetoworkspace, 9"
|
||||||
|
"ALT SHIFT, 0, movetoworkspace, 0"
|
||||||
|
"ALT SHIFT, H, movetoworkspace, special"
|
||||||
|
|
||||||
|
"ALT, mouse_down, workspace, e+1"
|
||||||
|
"ALT, mouse_up, workspace, e-1"
|
||||||
|
];
|
||||||
|
|
||||||
|
bindel = [
|
||||||
|
", XF86AudioRaiseVolume, exec, ${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
|
||||||
|
", XF86AudioLowerVolume, exec, ${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
||||||
|
|
||||||
|
", XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl set 5%-"
|
||||||
|
", XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl set +5%"
|
||||||
|
];
|
||||||
|
|
||||||
|
bindl = [
|
||||||
|
", XF86AudioPlay, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
|
||||||
|
", XF86AudioPrev, exec, ${pkgs.playerctl}/bin/playerctl previous"
|
||||||
|
", XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl next"
|
||||||
|
", XF86AudioMute, exec, ${pkgs.wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||||
|
|
||||||
|
"ALT, TAB, hyprexpo:expo, 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";
|
||||||
|
};
|
||||||
|
|
||||||
|
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 = {
|
||||||
|
hyprexpo = {
|
||||||
|
columns = 3;
|
||||||
|
gap_size = 5;
|
||||||
|
|
||||||
|
enable_gesture = true;
|
||||||
|
gesture_fingers = 3;
|
||||||
|
gesture_distance = 300;
|
||||||
|
gesture_positive = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
plugins = with inputs; [
|
||||||
|
# inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
113
hand7s/wayland/river.nix
Normal file
113
hand7s/wayland/river.nix
Normal file
|
|
@ -0,0 +1,113 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
wayland = {
|
||||||
|
windowManager = {
|
||||||
|
river = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "River"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
default-layout = "rivertile";
|
||||||
|
focus-follows-cursor = "normal";
|
||||||
|
border-width = 2;
|
||||||
|
|
||||||
|
declare-mod = [
|
||||||
|
"locked"
|
||||||
|
"normal"
|
||||||
|
];
|
||||||
|
|
||||||
|
xwayland = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
map = {
|
||||||
|
normal = {
|
||||||
|
"Alt Q" = "close";
|
||||||
|
"Alt S" = "spawn fuzzel";
|
||||||
|
"Alt Return" = "spawn ghostty";
|
||||||
|
"Alt L" = "spawn hyprlock";
|
||||||
|
"Alt F" = "toggle-fullscreen";
|
||||||
|
|
||||||
|
"Alt+Shift S" = "spawn wayshot --clipboard";
|
||||||
|
"Alt+Shift E" = "exit";
|
||||||
|
"Alt+Shift Space" = "toggle-float";
|
||||||
|
|
||||||
|
"Alt Up" = "send-to-output next";
|
||||||
|
"Alt Down" = "send-to-output previous";
|
||||||
|
"Alt Right" = "send-to-output next";
|
||||||
|
"Alt Left" = "send-to-output previous";
|
||||||
|
|
||||||
|
"Alt 1" = "set-focused-tags 0";
|
||||||
|
"Alt 2" = "set-focused-tags 1";
|
||||||
|
"Alt 3" = "set-focused-tags 2";
|
||||||
|
"Alt 4" = "set-focused-tags 3";
|
||||||
|
"Alt 5" = "set-focused-tags 4";
|
||||||
|
"Alt 6" = "set-focused-tags 5";
|
||||||
|
"Alt 7" = "set-focused-tags 6";
|
||||||
|
"Alt 8" = "set-focused-tags 7";
|
||||||
|
"Alt 9" = "set-focused-tags 8";
|
||||||
|
"Alt H" = "toggle-focused-tags 20";
|
||||||
|
|
||||||
|
"Alt+Shift 1" = "set-view-tags 0";
|
||||||
|
"Alt+Shift 2" = "set-view-tags 1";
|
||||||
|
"Alt+Shift 3" = "set-view-tags 2";
|
||||||
|
"Alt+Shift 4" = "set-view-tags 3";
|
||||||
|
"Alt+Shift 5" = "set-view-tags 4";
|
||||||
|
"Alt+Shift 6" = "set-view-tags 5";
|
||||||
|
"Alt+Shift 7" = "set-view-tags 6";
|
||||||
|
"Alt+Shift 8" = "set-view-tags 7";
|
||||||
|
"Alt+Shift 9" = "set-view-tags 8";
|
||||||
|
"Alt+Shift H" = "set-view-tags 20";
|
||||||
|
|
||||||
|
"Alt+Control 1" = "toggle-focused-tags 0";
|
||||||
|
"Alt+Control 2" = "toggle-focused-tags 1";
|
||||||
|
"Alt+Control 3" = "toggle-focused-tags 2";
|
||||||
|
"Alt+Control 4" = "toggle-focused-tags 3";
|
||||||
|
"Alt+Control 5" = "toggle-focused-tags 4";
|
||||||
|
"Alt+Control 6" = "toggle-focused-tags 5";
|
||||||
|
"Alt+Control 7" = "toggle-focused-tags 6";
|
||||||
|
"Alt+Control 8" = "toggle-focused-tags 7";
|
||||||
|
"Alt+Control 9" = "toggle-focused-tags 8";
|
||||||
|
"Alt+Control H" = "toggle-focused-tags 20";
|
||||||
|
|
||||||
|
"Alt+Shift+Control 1" = "toggle-view-tags 0";
|
||||||
|
"Alt+Shift+Control 2" = "toggle-view-tags 1";
|
||||||
|
"Alt+Shift+Control 3" = "toggle-view-tags 2";
|
||||||
|
"Alt+Shift+Control 4" = "toggle-view-tags 3";
|
||||||
|
"Alt+Shift+Control 5" = "toggle-view-tags 4";
|
||||||
|
"Alt+Shift+Control 6" = "toggle-view-tags 5";
|
||||||
|
"Alt+Shift+Control 7" = "toggle-view-tags 6";
|
||||||
|
"Alt+Shift+Control 8" = "toggle-view-tags 7";
|
||||||
|
"Alt+Shift+Control 9" = "toggle-view-tags 8";
|
||||||
|
"Alt+Shift+Control H" = "toggle-view-tags 20";
|
||||||
|
};
|
||||||
|
|
||||||
|
spawn = [
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hyprpaper.service"
|
||||||
|
"${pkgs.systemd}/bin/systemctl --user start hyprpolkitagent.service"
|
||||||
|
"${pkgs.yambar}/bin/yambar"
|
||||||
|
"${pkgs.wayidle}/bin/wayidle -t=300 ${pkgs.brightnessctl}/bin/brightnessctl -s set 10"
|
||||||
|
"${pkgs.wayidle}/bin/wayidle -t=600 ${pkgs.waylock}/bin/waylock"
|
||||||
|
];
|
||||||
|
|
||||||
|
map-pointer = {
|
||||||
|
normal = {
|
||||||
|
"Alt BTN_LEFT" = "move-view";
|
||||||
|
"Alt BTN_RIGHT" = "resize-view";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
riverctl keyboard-layout -options "grp:caps_toggle" "us,ru"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
183
hand7s/wayland/sway.nix
Normal file
183
hand7s/wayland/sway.nix
Normal file
|
|
@ -0,0 +1,183 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
wayland = {
|
||||||
|
windowManager = {
|
||||||
|
sway = {
|
||||||
|
enable = lib.mkIf (
|
||||||
|
config.home.gui.sessionType == "Sway"
|
||||||
|
) true;
|
||||||
|
|
||||||
|
package = pkgs.sway;
|
||||||
|
|
||||||
|
config = {
|
||||||
|
bindkeysToCode = true;
|
||||||
|
defaultWorkspace = "workspace number 1";
|
||||||
|
workspaceAutoBackAndForth = true;
|
||||||
|
|
||||||
|
bars = [];
|
||||||
|
|
||||||
|
window = {
|
||||||
|
border = 2;
|
||||||
|
titlebar = false;
|
||||||
|
hideEdgeBorders = "both";
|
||||||
|
};
|
||||||
|
|
||||||
|
floating = {
|
||||||
|
border = 2;
|
||||||
|
titlebar = false;
|
||||||
|
modifier = "Mod1";
|
||||||
|
};
|
||||||
|
|
||||||
|
focus = {
|
||||||
|
forceWrapping = true;
|
||||||
|
mouseWarping = true;
|
||||||
|
|
||||||
|
followMouse = "always";
|
||||||
|
newWindow = "smart";
|
||||||
|
wrapping = "yes";
|
||||||
|
};
|
||||||
|
|
||||||
|
gaps = {
|
||||||
|
vertical = null;
|
||||||
|
horizontal = null;
|
||||||
|
|
||||||
|
outer = null;
|
||||||
|
inner = null;
|
||||||
|
|
||||||
|
top = null;
|
||||||
|
bottom = null;
|
||||||
|
left = null;
|
||||||
|
right = null;
|
||||||
|
|
||||||
|
smartGaps = false;
|
||||||
|
smartBorders = "no_gaps";
|
||||||
|
};
|
||||||
|
|
||||||
|
startup = [
|
||||||
|
{
|
||||||
|
command = "${pkgs.systemd}/bin/systemctl --user start hyprpaper.service";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.systemd}/bin/systemctl --user start hypridle.service";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.systemd}/bin/systemctl --user start hyprpolkitagent.service";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.sway-audio-idle-inhibit}/bin/sway-audio-idle-inhibit";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.autotiling-rs}/bin/autotiling-rs";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.swaykbdd}/bin/swaykbdd";
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
command = "${pkgs.yambar}/bin/yambar";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
keybindings = lib.mkOptionDefault {
|
||||||
|
"Mod1+q" = "kill";
|
||||||
|
"Mod1+s" = "exec ${pkgs.fuzzel}/bin/fuzzel";
|
||||||
|
"Mod1+Return" = "exec ${pkgs.ghostty}/bin/ghostty";
|
||||||
|
"Mod1+l" = "exec ${pkgs.swaylock}/bin/swaylock";
|
||||||
|
"Mod1+f" = "fullscreen toggle";
|
||||||
|
"Mod1+Shift+s" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot --notify copy area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png";
|
||||||
|
|
||||||
|
"Mod1+Shift+e" = "exec ${pkgs.sway}/bin/swaymsg exit";
|
||||||
|
"Mod1+Space" = "floating toggle";
|
||||||
|
"Mod1+r" = "mode resize";
|
||||||
|
|
||||||
|
"Mod1+Left" = "focus left";
|
||||||
|
"Mod1+Right" = "focus right";
|
||||||
|
"Mod1+Up" = "focus up";
|
||||||
|
"Mod1+Down" = "focus down";
|
||||||
|
|
||||||
|
"Mod1+1" = "workspace number 1";
|
||||||
|
"Mod1+2" = "workspace number 2";
|
||||||
|
"Mod1+3" = "workspace number 3";
|
||||||
|
"Mod1+4" = "workspace number 4";
|
||||||
|
"Mod1+5" = "workspace number 5";
|
||||||
|
"Mod1+6" = "workspace number 6";
|
||||||
|
"Mod1+7" = "workspace number 7";
|
||||||
|
"Mod1+8" = "workspace number 8";
|
||||||
|
"Mod1+9" = "workspace number 9";
|
||||||
|
"Mod1+0" = "workspace number 10";
|
||||||
|
"Mod1+h" = "scratchpad show";
|
||||||
|
|
||||||
|
"Mod1+Shift+1" = "move container to workspace number 1";
|
||||||
|
"Mod1+Shift+2" = "move container to workspace number 2";
|
||||||
|
"Mod1+Shift+3" = "move container to workspace number 3";
|
||||||
|
"Mod1+Shift+4" = "move container to workspace number 4";
|
||||||
|
"Mod1+Shift+5" = "move container to workspace number 5";
|
||||||
|
"Mod1+Shift+6" = "move container to workspace number 6";
|
||||||
|
"Mod1+Shift+7" = "move container to workspace number 7";
|
||||||
|
"Mod1+Shift+8" = "move container to workspace number 8";
|
||||||
|
"Mod1+Shift+9" = "move container to workspace number 9";
|
||||||
|
"Mod1+Shift+0" = "move container to workspace number 10";
|
||||||
|
"Mod1+Shift+h" = "move scratchpad";
|
||||||
|
|
||||||
|
"XF86AudioRaiseVolume" = "exec ${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+";
|
||||||
|
"XF86AudioLowerVolume" = "exec ${pkgs.wireplumber}/bin/wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-";
|
||||||
|
"XF86AudioMute" = "exec ${pkgs.wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
|
|
||||||
|
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||||
|
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||||
|
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||||
|
|
||||||
|
"XF86MonBrightnessDown" = "exec ${pkgs.brightnessctl}/bin/brightnessctl set 5%-";
|
||||||
|
"XF86MonBrightnessUp" = "exec ${pkgs.brightnessctl}/bin/brightnessctl set +5%";
|
||||||
|
};
|
||||||
|
|
||||||
|
modes = {
|
||||||
|
resize = {
|
||||||
|
"Left" = "resize shrink width 10px";
|
||||||
|
"Right" = "resize shrink width 10px";
|
||||||
|
"Up" = "resize shrink height 10px";
|
||||||
|
"Down" = "resize shrink height 10px";
|
||||||
|
|
||||||
|
"Shift+Left" = "resize grow width 10px";
|
||||||
|
"Shift+Right" = "resize grow width 10px";
|
||||||
|
"Shift+Up" = "resize grow height 10px";
|
||||||
|
"Shift+Down" = "resize grow height 10px";
|
||||||
|
"Escape" = "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
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
43
s0mePC-nix/boot/initrd.nix
Normal file
43
s0mePC-nix/boot/initrd.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
initrd = {
|
||||||
|
availableKernelModules = [
|
||||||
|
"nvme"
|
||||||
|
"xhci_pci"
|
||||||
|
"ahci"
|
||||||
|
"usbhid"
|
||||||
|
"usb_storage"
|
||||||
|
"sd_mod"
|
||||||
|
"btrfs"
|
||||||
|
"cryptd"
|
||||||
|
];
|
||||||
|
|
||||||
|
supportedFilesystems = {
|
||||||
|
vfat = true;
|
||||||
|
btrfs = true;
|
||||||
|
zfs = lib.mkForce true;
|
||||||
|
};
|
||||||
|
|
||||||
|
kernelModules = [
|
||||||
|
"amdgpu"
|
||||||
|
];
|
||||||
|
|
||||||
|
luks = {
|
||||||
|
devices = {
|
||||||
|
cryptroot = {
|
||||||
|
device = "nvme-KINGSTON_SKC3000S_1024G_AA000000000000000013-part2";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
verbose = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
86
s0mePC-nix/boot/kernel.nix
Normal file
86
s0mePC-nix/boot/kernel.nix
Normal file
|
|
@ -0,0 +1,86 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
kernel = {
|
||||||
|
sysctl = {
|
||||||
|
"vm.swappiness" = 100;
|
||||||
|
"vm.dirty_background_bytes" = 67108864;
|
||||||
|
"vm.dirty_bytes" = 268435456;
|
||||||
|
"vm.dirty_expire_centisecs" = 1500;
|
||||||
|
"vm.dirty_writeback_centisecs" = 100;
|
||||||
|
"vm.vfs_cache_pressure" = 50;
|
||||||
|
"vm.max_map_count" = 1048576;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
kernelPackages = pkgs.linuxPackages_cachyos;
|
||||||
|
extraModulePackages = [
|
||||||
|
config.boot.kernelPackages.zenpower
|
||||||
|
];
|
||||||
|
|
||||||
|
kernelModules = [
|
||||||
|
"amdgpu"
|
||||||
|
"zenpower"
|
||||||
|
];
|
||||||
|
|
||||||
|
kernelParams = [
|
||||||
|
"amd_pstate=guided"
|
||||||
|
"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 = [
|
||||||
|
"k10temp"
|
||||||
|
"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"
|
||||||
|
];
|
||||||
|
|
||||||
|
supportedFilesystems = {
|
||||||
|
vfat = true;
|
||||||
|
btrfs = true;
|
||||||
|
zfs = lib.mkForce true;
|
||||||
|
};
|
||||||
|
|
||||||
|
consoleLogLevel = 0;
|
||||||
|
};
|
||||||
|
}
|
||||||
15
s0mePC-nix/boot/lanzaboote.nix
Normal file
15
s0mePC-nix/boot/lanzaboote.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
lanzaboote = {
|
||||||
|
enable = true;
|
||||||
|
configurationLimit = 7;
|
||||||
|
pkiBundle = "/var/lib/sbctl";
|
||||||
|
settings = {
|
||||||
|
timeout = 2;
|
||||||
|
sortKey = "lanza";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
22
s0mePC-nix/boot/loader/systemd-boot.nix
Normal file
22
s0mePC-nix/boot/loader/systemd-boot.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
loader = {
|
||||||
|
systemd-boot = {
|
||||||
|
enable = lib.mkDefault false;
|
||||||
|
sortKey = "nixos";
|
||||||
|
memtest86 = {
|
||||||
|
enable = true;
|
||||||
|
sortKey = "o_memtest86";
|
||||||
|
};
|
||||||
|
|
||||||
|
netbootxyz = {
|
||||||
|
enable = false;
|
||||||
|
sortKey = "o_netbootxyz";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
13
s0mePC-nix/boot/plymouth.nix
Normal file
13
s0mePC-nix/boot/plymouth.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
plymouth = {
|
||||||
|
enable = true;
|
||||||
|
themePackages = with pkgs; [
|
||||||
|
nixos-bgrt-plymouth
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
s0mePC-nix/boot/tmp.nix
Normal file
10
s0mePC-nix/boot/tmp.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
tmp = {
|
||||||
|
useTmpfs = true;
|
||||||
|
cleanOnBoot = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/boot/zfs.nix
Normal file
12
s0mePC-nix/boot/zfs.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
zfs = {
|
||||||
|
package = pkgs.zfs_cachyos;
|
||||||
|
allowHibernation = false;
|
||||||
|
removeLinuxDRM = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
7
s0mePC-nix/console/console.nix
Normal file
7
s0mePC-nix/console/console.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
console = {
|
||||||
|
useXkbConfig = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
96
s0mePC-nix/default.nix
Normal file
96
s0mePC-nix/default.nix
Normal file
|
|
@ -0,0 +1,96 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./boot/initrd.nix
|
||||||
|
./boot/kernel.nix
|
||||||
|
./boot/lanzaboote.nix
|
||||||
|
./boot/plymouth.nix
|
||||||
|
./boot/tmp.nix
|
||||||
|
./boot/loader/systemd-boot.nix
|
||||||
|
./boot/zfs.nix
|
||||||
|
|
||||||
|
./console/console.nix
|
||||||
|
|
||||||
|
./environment/systemPackages.nix
|
||||||
|
./environment/variables.nix
|
||||||
|
|
||||||
|
./hardware/amdgpu.nix
|
||||||
|
./hardware/cpu.nix
|
||||||
|
./hardware/graphics.nix
|
||||||
|
./hardware/openrazer.nix
|
||||||
|
./hardware/qmk.nix
|
||||||
|
./hardware/zram.nix
|
||||||
|
|
||||||
|
./home-manager/users.nix
|
||||||
|
|
||||||
|
./i18n/locales.nix
|
||||||
|
|
||||||
|
./networking/dhcp.nix
|
||||||
|
./networking/firewall.nix
|
||||||
|
./networking/hostname.nix
|
||||||
|
./networking/networkmanager.nix
|
||||||
|
./networking/wireguard.nix
|
||||||
|
./networking/nameservers.nix
|
||||||
|
./networking/hosts.nix
|
||||||
|
./networking/hostId.nix
|
||||||
|
|
||||||
|
./nix/package.nix
|
||||||
|
./nix/settings/allowed-users.nix
|
||||||
|
./nix/settings/experimental-features.nix
|
||||||
|
./nix/settings/substituters.nix
|
||||||
|
./nix/settings/trusted-public-keys.nix
|
||||||
|
./nix/settings/trusted-users.nix
|
||||||
|
./nix/settings/auto-optimise-store.nix
|
||||||
|
|
||||||
|
./nixpkgs/config.nix
|
||||||
|
./nixpkgs/system.nix
|
||||||
|
|
||||||
|
./programs/gamescope.nix
|
||||||
|
./programs/gamemode.nix
|
||||||
|
./programs/nh.nix
|
||||||
|
./programs/steam.nix
|
||||||
|
|
||||||
|
./security/polkit.nix
|
||||||
|
./security/rtkit.nix
|
||||||
|
./security/sudo.nix
|
||||||
|
./security/sudo-rs.nix
|
||||||
|
|
||||||
|
./services/greetd.nix
|
||||||
|
./services/libinput.nix
|
||||||
|
./services/openssh.nix
|
||||||
|
./services/pipewire.nix
|
||||||
|
./services/netbird.nix
|
||||||
|
./services/qmk.nix
|
||||||
|
./services/scx.nix
|
||||||
|
./services/xserver.nix
|
||||||
|
./services/zapret.nix
|
||||||
|
./services/zerotier.nix
|
||||||
|
./services/yggdrasil.nix
|
||||||
|
./services/sunshine.nix
|
||||||
|
./services/usbmuxd.nix
|
||||||
|
./services/irqbalance.nix
|
||||||
|
|
||||||
|
./sops/defaults.nix
|
||||||
|
./sops/secrets.nix
|
||||||
|
|
||||||
|
./stylix/base16Scheme.nix
|
||||||
|
./stylix/cursor.nix
|
||||||
|
./stylix/defaults.nix
|
||||||
|
./stylix/fonts.nix
|
||||||
|
./stylix/image.nix
|
||||||
|
|
||||||
|
./system/name.nix
|
||||||
|
./system/stateVersion.nix
|
||||||
|
|
||||||
|
./time/timeZone.nix
|
||||||
|
|
||||||
|
./users/users/hand7s.nix
|
||||||
|
./users/users/root.nix
|
||||||
|
./users/mutableUsers.nix
|
||||||
|
|
||||||
|
./virtualisation/docker.nix
|
||||||
|
|
||||||
|
./xdg/icons.nix
|
||||||
|
./xdg/mime.nix
|
||||||
|
./xdg/portal.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
92
s0mePC-nix/disko.nix
Normal file
92
s0mePC-nix/disko.nix
Normal file
|
|
@ -0,0 +1,92 @@
|
||||||
|
{
|
||||||
|
disko = {
|
||||||
|
devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
device = "/dev/disk/by-id/nvme-KINGSTON_SKC3000S_1024G_AA000000000000000013";
|
||||||
|
type = "disk";
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
ESP = {
|
||||||
|
type = "EF00";
|
||||||
|
size = "1024M";
|
||||||
|
name = "boot";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
mountOptions = [
|
||||||
|
"fmask=0022"
|
||||||
|
"dmask=0022"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
luks = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "luks";
|
||||||
|
name = "lvm-crypted";
|
||||||
|
settings = {
|
||||||
|
allowDiscards = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
content = {
|
||||||
|
type = "lvm_pv";
|
||||||
|
vg = "pool";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
lvm_vg = {
|
||||||
|
pool = {
|
||||||
|
type = "lvm_vg";
|
||||||
|
lvs = {
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "btrfs";
|
||||||
|
extraArgs = [
|
||||||
|
"-f"
|
||||||
|
];
|
||||||
|
|
||||||
|
subvolumes = {
|
||||||
|
"/root" = {
|
||||||
|
mountpoint = "/";
|
||||||
|
mountOptions = [
|
||||||
|
"compress=zstd"
|
||||||
|
"noatime"
|
||||||
|
"discard=async"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/home" = {
|
||||||
|
mountpoint = "/home";
|
||||||
|
mountOptions = [
|
||||||
|
"compress=zstd"
|
||||||
|
"noatime"
|
||||||
|
"discard=async"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/nix" = {
|
||||||
|
mountpoint = "/nix";
|
||||||
|
mountOptions = [
|
||||||
|
"compress=zstd"
|
||||||
|
"noatime"
|
||||||
|
"discard=async"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
15
s0mePC-nix/environment/systemPackages.nix
Normal file
15
s0mePC-nix/environment/systemPackages.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment = {
|
||||||
|
systemPackages = with pkgs; [
|
||||||
|
home-manager
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
nixos-anywhere
|
||||||
|
sbctl
|
||||||
|
sops
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
23
s0mePC-nix/environment/variables.nix
Normal file
23
s0mePC-nix/environment/variables.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment = {
|
||||||
|
variables = {
|
||||||
|
AMD_VULKAN_ICD = "RADV";
|
||||||
|
HOSTNAME = config.networking.hostName;
|
||||||
|
QT_QPA_PLATFORM = "wayland";
|
||||||
|
SDL_VIDEODRIVER = "wayland";
|
||||||
|
CLUTTER_BACKEND = "wayland";
|
||||||
|
GDK_BACKEND = "wayland";
|
||||||
|
XDG_SESSION_TYPE = "wayland";
|
||||||
|
XDG_CURRENT_DESKTOP = "wayland";
|
||||||
|
XDG_SESSION_DESKTOP = "wayland";
|
||||||
|
NIXPKGS_ALLOW_UNFREE = "1";
|
||||||
|
NIXPKGS_ALLOW_INSECURE = "1";
|
||||||
|
NIXOS_OZONE_WL = "1";
|
||||||
|
GRIMBLAST_HIDE_CURSOR = "0";
|
||||||
|
TERM = "xterm-256color";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
s0mePC-nix/hardware/amdgpu.nix
Normal file
11
s0mePC-nix/hardware/amdgpu.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
amdgpu = {
|
||||||
|
initrd = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/hardware/cpu.nix
Normal file
12
s0mePC-nix/hardware/cpu.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
enableRedistributableFirmware = true;
|
||||||
|
cpu = {
|
||||||
|
amd = {
|
||||||
|
updateMicrocode = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
s0mePC-nix/hardware/graphics.nix
Normal file
10
s0mePC-nix/hardware/graphics.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
17
s0mePC-nix/hardware/openrazer.nix
Normal file
17
s0mePC-nix/hardware/openrazer.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
openrazer = {
|
||||||
|
enable = true;
|
||||||
|
users = [
|
||||||
|
"hand7s"
|
||||||
|
];
|
||||||
|
|
||||||
|
batteryNotifier = {
|
||||||
|
enable = true;
|
||||||
|
percentage = 15;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
s0mePC-nix/hardware/qmk.nix
Normal file
11
s0mePC-nix/hardware/qmk.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
keyboard = {
|
||||||
|
qmk = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
s0mePC-nix/hardware/zram.nix
Normal file
10
s0mePC-nix/hardware/zram.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
zramSwap = {
|
||||||
|
enable = true;
|
||||||
|
algorithm = "zstd";
|
||||||
|
priority = 100;
|
||||||
|
memoryPercent = 100;
|
||||||
|
};
|
||||||
|
}
|
||||||
23
s0mePC-nix/home-manager/users.nix
Normal file
23
s0mePC-nix/home-manager/users.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home-manager = {
|
||||||
|
users = {
|
||||||
|
hand7s = {
|
||||||
|
imports = [
|
||||||
|
../../hand7s/default.nix
|
||||||
|
inputs.hyprpanel.homeManagerModules.hyprpanel
|
||||||
|
inputs.spicetify-nix.homeManagerModules.default
|
||||||
|
inputs.hyprland.homeManagerModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
backupFileExtension = "backup";
|
||||||
|
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
s0mePC-nix/i18n/locales.nix
Normal file
11
s0mePC-nix/i18n/locales.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
i18n = {
|
||||||
|
defaultLocale = "en_US.UTF-8";
|
||||||
|
supportedLocales = [
|
||||||
|
"en_US.UTF-8/UTF-8"
|
||||||
|
"ru_RU.UTF-8/UTF-8"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
13
s0mePC-nix/networking/dhcp.nix
Normal file
13
s0mePC-nix/networking/dhcp.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
useDHCP = lib.mkDefault true;
|
||||||
|
dhcpcd = {
|
||||||
|
enable = true;
|
||||||
|
persistent = false;
|
||||||
|
wait = "any";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
s0mePC-nix/networking/firewall.nix
Normal file
20
s0mePC-nix/networking/firewall.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
firewall = {
|
||||||
|
allowPing = true;
|
||||||
|
enable = true;
|
||||||
|
checkReversePath = false;
|
||||||
|
allowedUDPPorts = [
|
||||||
|
9993
|
||||||
|
2080
|
||||||
|
];
|
||||||
|
|
||||||
|
allowedTCPPorts = [
|
||||||
|
9993
|
||||||
|
2080
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
7
s0mePC-nix/networking/hostId.nix
Normal file
7
s0mePC-nix/networking/hostId.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
hostId = "5c79d468";
|
||||||
|
};
|
||||||
|
}
|
||||||
7
s0mePC-nix/networking/hostname.nix
Normal file
7
s0mePC-nix/networking/hostname.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
hostName = "s0mePC-nix";
|
||||||
|
};
|
||||||
|
}
|
||||||
9
s0mePC-nix/networking/hosts.nix
Normal file
9
s0mePC-nix/networking/hosts.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking ={
|
||||||
|
hosts = {
|
||||||
|
# Nope
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
18
s0mePC-nix/networking/nameservers.nix
Normal file
18
s0mePC-nix/networking/nameservers.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
nameservers = [
|
||||||
|
"1.1.1.1"
|
||||||
|
"1.0.0.1"
|
||||||
|
"8.8.8.8"
|
||||||
|
"8.8.4.4"
|
||||||
|
"2606:4700:4700::1111"
|
||||||
|
"2606:4700:4700::1001"
|
||||||
|
"2001:4860:4860::8888"
|
||||||
|
"2001:4860:4860::8844"
|
||||||
|
"2620:119:35::35"
|
||||||
|
"2620:119:53::53"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
11
s0mePC-nix/networking/networkmanager.nix
Normal file
11
s0mePC-nix/networking/networkmanager.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking ={
|
||||||
|
networkmanager = {
|
||||||
|
enable = true;
|
||||||
|
dns = "default";
|
||||||
|
dhcp = "internal";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/networking/timeServers.nix
Normal file
12
s0mePC-nix/networking/timeServers.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
timeServers = [
|
||||||
|
"0.nixos.pool.ntp.org"
|
||||||
|
"1.nixos.pool.ntp.org"
|
||||||
|
"2.nixos.pool.ntp.org"
|
||||||
|
"3.nixos.pool.ntp.org"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
9
s0mePC-nix/networking/wireguard.nix
Normal file
9
s0mePC-nix/networking/wireguard.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
networking = {
|
||||||
|
wireguard = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
8
s0mePC-nix/nix/package.nix
Normal file
8
s0mePC-nix/nix/package.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
package = pkgs.nixVersions.latest;
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/nix/settings/allowed-users.nix
Normal file
12
s0mePC-nix/nix/settings/allowed-users.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
sandbox = true;
|
||||||
|
allowed-users = [
|
||||||
|
"@wheel"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
9
s0mePC-nix/nix/settings/auto-optimise-store.nix
Normal file
9
s0mePC-nix/nix/settings/auto-optimise-store.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
auto-optimise-store = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/nix/settings/experimental-features.nix
Normal file
12
s0mePC-nix/nix/settings/experimental-features.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
21
s0mePC-nix/nix/settings/substituters.nix
Normal file
21
s0mePC-nix/nix/settings/substituters.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
substituters = [
|
||||||
|
# cache.nixos.org
|
||||||
|
"https://nixos-cache-proxy.cofob.dev"
|
||||||
|
"https://cache.nixos.org"
|
||||||
|
# cache.garnix.org
|
||||||
|
"https://cache.garnix.io"
|
||||||
|
# cachix
|
||||||
|
"https://nix-community.cachix.org/"
|
||||||
|
"https://chaotic-nyx.cachix.org/"
|
||||||
|
"https://ags.cachix.org"
|
||||||
|
"https://hyprland.cachix.org"
|
||||||
|
"https://chaotic-nyx.cachix.org/"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
s0mePC-nix/nix/settings/trusted-public-keys.nix
Normal file
20
s0mePC-nix/nix/settings/trusted-public-keys.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
trusted-public-keys = [
|
||||||
|
# cache.nixos.org
|
||||||
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
|
# cache.garnix.io
|
||||||
|
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||||
|
# cachix.org
|
||||||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
|
||||||
|
"ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8="
|
||||||
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||||
|
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
s0mePC-nix/nix/settings/trusted-users.nix
Normal file
11
s0mePC-nix/nix/settings/trusted-users.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
trusted-users = [
|
||||||
|
"@wheel"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
s0mePC-nix/nixpkgs/config.nix
Normal file
10
s0mePC-nix/nixpkgs/config.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs = {
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
allowBroken = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
s0mePC-nix/nixpkgs/overlays.nix
Normal file
10
s0mePC-nix/nixpkgs/overlays.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs = {
|
||||||
|
overlays = [
|
||||||
|
inputs.hyprpanel.overlay
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
8
s0mePC-nix/nixpkgs/system.nix
Normal file
8
s0mePC-nix/nixpkgs/system.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs = {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
hostPlatform = "x86_64-linux";
|
||||||
|
};
|
||||||
|
}
|
||||||
9
s0mePC-nix/programs/gamemode.nix
Normal file
9
s0mePC-nix/programs/gamemode.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
gamemode = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
14
s0mePC-nix/programs/gamescope.nix
Normal file
14
s0mePC-nix/programs/gamescope.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
gamescope = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.gamescope_git;
|
||||||
|
args = [
|
||||||
|
"-e"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
14
s0mePC-nix/programs/nh.nix
Normal file
14
s0mePC-nix/programs/nh.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
nh = {
|
||||||
|
enable = true;
|
||||||
|
clean = {
|
||||||
|
enable = true;
|
||||||
|
dates = "weekly";
|
||||||
|
extraArgs = "--keep 2 --keep-since 2d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
26
s0mePC-nix/programs/steam.nix
Normal file
26
s0mePC-nix/programs/steam.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
steam = {
|
||||||
|
enable = true;
|
||||||
|
extraCompatPackages = [
|
||||||
|
pkgs.proton-ge-bin
|
||||||
|
];
|
||||||
|
|
||||||
|
remotePlay = {
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
localNetworkGameTransfers = {
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
protontricks = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
s0mePC-nix/security/polkit.nix
Normal file
12
s0mePC-nix/security/polkit.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
security = {
|
||||||
|
polkit = {
|
||||||
|
enable = true;
|
||||||
|
adminIdentities = [
|
||||||
|
"unix-group:wheel"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
9
s0mePC-nix/security/rtkit.nix
Normal file
9
s0mePC-nix/security/rtkit.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
security = {
|
||||||
|
rtkit = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue