treewide: upstreaming changes

Signed-off-by: s0me1newithhand7s <117505144+s0me1newithhand7s@users.noreply.github.com>
This commit is contained in:
s0me1newithhand7s 2025-10-24 20:48:35 +03:00
parent d159232b37
commit e4e1b03c7e
No known key found for this signature in database
160 changed files with 3408 additions and 5474 deletions

6
.gitignore vendored
View file

@ -1,11 +1,9 @@
# sops / secrets
.sops.yaml
secrets/
s0mePC-nix/sops/
s0melapt0p-nix/sops
*/sops/*
# ignored hosts
s0men0de-nix/
# ignored
# env shit
.env/

3027
flake.lock generated

File diff suppressed because it is too large Load diff

637
flake.nix
View file

@ -1,25 +1,20 @@
{
description = "main flake.";
description = "hand7s'es flake";
inputs = {
nixpkgs = {
url = "github:nixos/nixpkgs/nixos-unstable";
agenix = {
flake = true;
type = "github";
owner = "yaxitech";
repo = "ragenix";
};
nixos-hardware = {
url = "github:nixos/nixos-hardware";
};
agenix-rekey = {
flake = true;
type = "github";
owner = "oddlama";
repo = "agenix-rekey";
nixgl = {
url = "github:nix-community/nixGL";
};
nur = {
url = "github:nix-community/NUR";
};
nixos-generators = {
url = "github:nix-community/nixos-generators";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -27,25 +22,41 @@
};
};
nixos-anywhere = {
url = "github:nix-community/nixos-anywhere";
ayugram-desktop = {
flake = true;
type = "github";
owner = "ndfined-crp";
repo = "ayugram-desktop";
};
impermanence = {
url = "github:nix-community/impermanence";
chaotic = {
flake = true;
type = "github";
owner = "chaotic-cx";
repo = "nyx";
ref = "nyxpkgs-unstable";
};
home-manager = {
url = "github:nix-community/home-manager/";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
deploy-rs = {
flake = true;
type = "github";
owner = "serokell";
repo = "deploy-rs";
};
devshell = {
flake = true;
type = "github";
owner = "numtide";
repo = "devshell";
};
disko = {
url = "github:nix-community/disko";
flake = true;
type = "github";
owner = "nix-community";
repo = "disko";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -53,8 +64,68 @@
};
};
flake-parts = {
flake = true;
type = "github";
owner = "hercules-ci";
repo = "flake-parts";
};
freesm = {
flake = true;
type = "github";
owner = "freesmteam";
repo = "freesmlauncher";
};
home-manager = {
flake = true;
type = "github";
owner = "nix-community";
repo = "home-manager";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
homebrew-bundle = {
flake = false;
type = "github";
owner = "homebrew";
repo = "homebrew-bundle";
};
homebrew-cask = {
flake = false;
type = "github";
owner = "homebrew";
repo = "homebrew-cask";
};
homebrew-core = {
flake = false;
type = "github";
owner = "homebrew";
repo = "homebrew-core";
};
hyprland = {
flake = true;
type = "github";
owner = "hyprwm";
repo = "Hyprland";
};
lanzaboote = {
url = "github:nix-community/lanzaboote/v0.4.2";
flake = true;
type = "github";
owner = "nix-community";
repo = "lanzaboote";
ref = "v0.4.2";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -62,12 +133,52 @@
};
};
vscserver = {
url = "github:nix-community/nixos-vscode-server";
nekoflake = {
flake = true;
type = "github";
owner = "s0me1newithhand7s";
repo = "nekoflake";
};
nix-darwin = {
flake = true;
type = "github";
owner = "LnL7";
repo = "nix-darwin";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
nix-homebrew = {
flake = true;
type = "github";
owner = "zhaofengli";
repo = "nix-homebrew";
};
nix-index-database = {
flake = true;
type = "github";
owner = "nix-community";
repo = "nix-index-database";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
nix-on-droid = {
url = "github:nix-community/nix-on-droid/master";
flake = true;
type = "github";
owner = "nix-community";
repo = "nix-on-droid";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -79,24 +190,19 @@
};
};
stylix = {
url = "github:nix-community/stylix";
nixos-anywhere = {
flake = true;
type = "github";
owner = "nix-community";
repo = "nixos-anywhere";
};
freesm = {
url = "github:FreesmTeam/FreesmLauncher";
};
nixos-generators = {
flake = true;
type = "github";
owner = "nix-community";
repo = "nixos-generators";
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";
@ -104,102 +210,56 @@
};
};
nix-homebrew = {
url = "github:zhaofengli-wip/nix-homebrew";
nixpkgs = {
flake = true;
type = "github";
owner = "nixos";
repo = "nixpkgs";
ref = "nixos-unstable";
};
homebrew-core = {
url = "github:homebrew/homebrew-core";
flake = false;
noctalia = {
flake = true;
type = "github";
owner = "noctalia-dev";
repo = "noctalia-shell";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
homebrew-cask = {
url = "github:homebrew/homebrew-cask";
flake = false;
quickshell = {
follows = "quickshell";
};
};
};
homebrew-bundle = {
url = "github:homebrew/homebrew-bundle";
flake = false;
quickshell = {
flake = true;
type = "git";
url = "https://git.outfoxxed.me/outfoxxed/quickshell";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
sops-nix = {
url = "github:Mic92/sops-nix";
};
ayugram-desktop = {
url = "github:ndfined-crp/ayugram-desktop/";
};
hyprland = {
url = "github:hyprwm/Hyprland";
};
hyprplugs = {
url = "github:hyprwm/hyprland-plugins";
inputs = {
hyprland = {
follows = "hyprland";
};
};
};
hyprsplit = {
url = "github:Duckonaut/split-monitor-workspaces";
inputs = {
hyprland = {
follows = "hyprland";
};
};
};
hyprpanel = {
url = "github:hyprwm/Hyprland/v0.49.0";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
hypremot = {
url = "github:zakk4223/hyprland-easymotion";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
hyprcurs = {
url = "github:VirtCode/hypr-dynamic-cursors";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
hyprspace = {
url = "github:KZDKM/Hyprspace";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
hyprgrass = {
url = "github:horriblename/hyprgrass";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
flake = true;
type = "github";
owner = "Mic92";
repo = "sops-nix";
};
spicetify-nix = {
url = "github:Gerg-L/spicetify-nix";
flake = true;
type = "github";
owner = "Gerg-L";
repo = "spicetify-nix";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -207,8 +267,46 @@
};
};
stylix = {
flake = true;
type = "github";
owner = "nix-community";
repo = "stylix";
};
system-manager = {
flake = true;
type = "github";
owner = "numtide";
repo = "system-manager";
inputs = {
nixpkgs = {
follows = "nixpkgs";
};
};
};
treefmt-nix = {
flake = true;
type = "github";
owner = "numtide";
repo = "treefmt-nix";
};
vscserver = {
flake = true;
type = "github";
owner = "nix-community";
repo = "nixos-vscode-server";
};
zen-browser = {
url = "github:youwen5/zen-browser-flake";
flake = true;
type = "github";
owner = "youwen5";
repo = "zen-browser-flake";
inputs = {
nixpkgs = {
follows = "nixpkgs";
@ -217,68 +315,33 @@
};
};
outputs = {
outputs = inputs @ {
flake-parts,
self,
nixpkgs,
home-manager,
...
} @ inputs: let
pkgs = self.inputs.nixpkgs.legacyPackages.x86_64-linux;
in {
formatter = {
x86_64-linux = self.packages.x86_64-linux.hand7sfmt;
};
packages = {
x86_64-linux = {
hand7sfmt = pkgs.writeShellApplication {
name = "hand7sfmt";
runtimeInputs = with pkgs; [
alejandra
statix
deadnix
}:
flake-parts.lib.mkFlake {
inherit
inputs
self
;
} {
systems = [
"x86_64-linux"
"aarch64-linux"
];
text = ''
${nixpkgs.lib.getExe pkgs.alejandra} \
--experimental-config \
${pkgs.writeText "alejandra.toml" ''
indentation = "FourSpaces"
''} \
--check \
${self}; \
${nixpkgs.lib.getExe pkgs.statix} \
check \
--config \
${pkgs.writeText "statix.toml" ''
disabled = [
"empty_pattern"
]
''} \
${self}; \
${nixpkgs.lib.getExe pkgs.deadnix} \
--fail \
${self};
'';
};
};
};
devShells = {
x86_64-linux = {
default = pkgs.mkShell {
buildInputs = with pkgs; [
alejandra
statix
deadnix
imports = [
# modules
inputs.devshell.flakeModule
inputs.treefmt-nix.flakeModule
inputs.home-manager.flakeModules.home-manager
];
};
};
};
flake = {
homeConfigurations = {
hand7s = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
"hand7s" = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
extraSpecialArgs = {
inherit
inputs
@ -288,17 +351,19 @@
modules = [
"${self}/hand7s/standalone.nix"
inputs.stylix.homeManagerModules.stylix
inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops
inputs.spicetify-nix.homeManagerModules.default
inputs.hyprland.homeManagerModules.default
inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops
inputs.nix-index-database.homeModules.nix-index
inputs.noctalia.homeModules.default
];
};
};
nixosConfigurations = {
s0mePC-nix = nixpkgs.lib.nixosSystem {
"s0mePC-nix" = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit
@ -306,19 +371,20 @@
self
;
};
modules = [
"${self}/s0mePC-nix/default.nix"
"${self}/s0mePC-nix/disko.nix"
"${self}/s0mePC-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
inputs.nix-index-database.nixosModules.nix-index
];
};
s0meMiniPC-nix = nixpkgs.lib.nixosSystem {
"s0melapt0p-nix" = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit
@ -326,52 +392,165 @@
self
;
};
modules = [
"${self}/s0meMiniPC-nix/default.nix"
"${self}/s0meMiniPC-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
];
};
s0men0de-nix = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit inputs self;
};
modules = [
"${self}/s0men0de-nix/default.nix"
"${self}/s0men0de-nix/disko.nix"
inputs.stylix.nixosModules.stylix
inputs.sops-nix.nixosModules.sops
inputs.disko.nixosModules.disko
inputs.home-manager.nixosModules.default
];
};
s0melapt0p-nix = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit
inputs
self
;
};
modules = [
"${self}/s0melapt0p-nix/default.nix"
"${self}/s0melapt0p-nix/disko.nix"
"${self}/s0melapt0p-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
inputs.nix-index-database.nixosModules.nix-index
];
};
"s0mev1rtn0de-nix" = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit
inputs
self
;
};
modules = [
"${self}/s0mev1rtn0de-nix/"
inputs.disko.nixosModules.disko
inputs.home-manager.nixosModules.default
inputs.sops-nix.nixosModules.sops
inputs.nix-index-database.nixosModules.nix-index
];
};
"s0meMiniPC-nix" = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit
inputs
self
;
};
modules = [
"${self}/s0meMiniPC-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
inputs.nix-index-database.nixosModules.nix-index
];
};
};
nixOnDroidConfigurations = {
n0thing-3a = inputs.nix-on-droid.lib.nixOnDroidConfiguration {
pkgs = import inputs.nixpkgs {
system = "aarch64-linux";
overlays = [
inputs.nix-on-droid.overlays.default
];
};
extraSpecialArgs = {
inherit
inputs
self
;
};
modules = [
inputs.home-manager.nixOnDroidModules.default
];
};
};
systemConfigs = {
s0mePC = inputs.system-manager.lib.makeSystemConfig {
extraSpecialArgs = {
inherit
inputs
self
;
};
modules = [
# "${self}/s0mePC/"
inputs.home-manager.nixosModules.default
{
nixpkgs.hostPlatform = "x86_64-linux";
}
];
};
};
deploy = {
user = "hand7s";
interactiveSudo = true;
autoRollback = true;
magicRollback = true;
remoteBuild = false;
sshOpts = [
"-p"
"6969"
];
nodes = {
"s0mev1rtn0de-nix" = {
hostname = "90.156.226.152";
profiles = {
main = {
path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.s0mev1rtn0de-nix;
profilePath = "/nix/var/nix/profiles/system";
};
};
};
};
};
};
perSystem = {...}: {
treefmt = {
flakeFormatter = true;
flakeCheck = false;
enableDefaultExcludes = true;
programs = {
statix = {
enable = true;
priority = 1;
includes = [
"*.nix"
];
disabled-lints = [
"empty_pattern"
];
};
deadnix = {
enable = true;
priority = 2;
includes = [
"*.nix"
];
};
};
settings = {
global = {
on-unmatched = "fatal";
excludes = [
"secrets/*"
".sops.yaml"
".gitignore"
];
};
};
};
};
};
}

View file

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

View file

@ -16,6 +16,11 @@
osConfig.networking.hostName == "s0mePC-nix"
)
then "Hyprland"
else if
(
osConfig.networking.hostName == "s0mew0rkstat1on-nix"
)
then "Hyprland"
else if
(
osConfig.networking.hostName == "s0melapt0p-nix"

View file

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

View file

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

View file

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

View file

@ -3,7 +3,6 @@
settings = {
substituters = [
# cache.nixos.org
"https://nixos-cache-proxy.cofob.dev"
"https://cache.nixos.org"
# cache.garnix.org
"https://cache.garnix.io"

View file

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

View file

@ -20,6 +20,7 @@ in {
sessionType = lib.mkOption {
type = lib.types.enum [
"DWL"
"Sway"
"River"
"Hyprland"
@ -40,16 +41,17 @@ in {
[
vesktop
nekoray
ayugram
anki-bin
obsidian
playerctl
monero-gui
mindustry
bitwarden
lan-mouse
parsec-bin
pwvucontrol
easyeffects
ayugram
element-desktop
hyprpolkitagent
freesm-launcher
@ -63,10 +65,10 @@ in {
cfg.sessionType == "Sway"
) [
swaykbdd
sway-contrib.grimshot
sway-contrib.inactive-windows-transparency
autotiling-rs
sway-audio-idle-inhibit
sway-contrib.grimshot
sway-contrib.inactive-windows-transparency
]
++ lib.optionals (
cfg.sessionType == "River"
@ -78,7 +80,7 @@ in {
++ lib.optionals (
cfg.sessionType == "Hyprland"
) [
hyprpanel
inputs.noctalia.packages.${system}.default
grimblast
];
};
@ -90,10 +92,12 @@ in {
fuzzel.enable = true;
ghostty.enable = true;
firefox.enable = true;
alacritty.enable = true;
};
services = with lib.mkDefault; {
hyprpaper.enable = true;
kdeconnect.enable = true;
};
};

View file

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

View file

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

View file

@ -8,6 +8,21 @@ in {
programs = {
firefox = {
package = zen-browser;
profiles = rec {
default = {
userContent = "
--zen-colors-primary: #82aaff !important;
--zen-colors-secondary: #c099ff !important;
--zen-colors-tertiary: #1e2030 !important;
--zen-colors-border: #3b4261 !important;
--zen-dialog-background: #222436 !important;
.tab-background[selected=[selected=''] {
background-color: #6c598c !important;
}
";
};
};
};
};
}

View file

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

View file

@ -16,8 +16,7 @@
keybind = [
"ctrl+shift+d=new_split:right"
"ctrl+shift+h=goto_split:left"
"ctrl+shift+l=goto_split:right"
"ctrl+shift+a=new_split:down"
];
};
};

View file

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

View file

@ -5,12 +5,11 @@
}: {
programs = {
helix = {
enable = true;
package = pkgs.helix_git;
enable = true;
defaultEditor = true;
extraPackages = with pkgs; [
nixd
nixfmt-rfc-style
];
settings = {
@ -44,9 +43,9 @@
};
formatter = {
command = "${lib.getExe pkgs.nixfmt-rfc-style}";
command = "${lib.getExe pkgs.nix}";
args = [
"--indent=4"
"fmt"
];
};

View file

@ -23,7 +23,7 @@
text_align = "center";
color = config.lib.stylix.colors.base01;
font_size = 48;
font_family = "Nerd Hack Font";
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "0, 50";
@ -42,7 +42,7 @@
text_align = "center";
color = config.lib.stylix.colors.base06;
font_size = 26;
font_family = "Nerd Hack Font";
font_family = config.stylix.fonts.emoji.name;
rotate = 0;
position = "200, -50";

View file

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

12
hand7s/programs/kitty.nix Normal file
View file

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

View file

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

View file

@ -15,6 +15,7 @@
forceBlackScreenCorners = true;
showScreenCorners = true;
screenRadiusRatio = 2;
radiusRatio = 0.7;
};
appLauncher = {
@ -186,6 +187,15 @@
];
};
ui = {
fontDefault = "Nerd Fonts Hack";
fontDefaultScale = 1;
fontFixed = "Nerd Fonts Hack";
fontFixedScale = 1;
idleInhibitorEnabled = false;
tooltipsEnabled = true;
};
location = {
name = "Yelaguba";
showWeekNumberInCalendar = true;

View file

@ -16,7 +16,6 @@
waveform
obs-vkcapture
obs-pipewire-audio-capture
obs-webkitgtk
];
};
};

View file

@ -1,6 +1,7 @@
{
lib,
config,
pkgs,
lib,
...
}: {
programs = {
@ -16,14 +17,14 @@
];
userSettings = lib.mkForce {
"editor.fontFamily" = "'Hack Nerd Font'";
"editor.fontFamily" = config.stylix.fonts.emoji.name;
"editor.fontSize" = 16;
"editor.cursorBlinking" = "smooth";
"editor.cursorSmoothCaretAnimation" = "on";
"editor.wordWrap" = "on";
"workbench.colorTheme" = "Blazing Red";
"workbench.colorTheme" = "Tokyo Night Moon";
"workbench.sideBar.location" = "right";
"workbench.activityBar.location" = "top";
"workbench.editor.editorActionsLocation" = "titleBar";
@ -31,6 +32,8 @@
"window.menuBarVisibility" = "hidden";
"terminal.integrated.cursorBlinking" = true;
"files.autoSave" = "afterDelay";
"[nix]" = {

File diff suppressed because it is too large Load diff

View file

@ -19,6 +19,20 @@
show_hidden = true;
show_symlink = true;
prepend_keymap = [
{
on = "R";
run = "plugin rsync";
desc = "Copy files using rsync";
}
{
on = "c, m";
run = "plugin chmod";
desc = "Chmod on selected files";
}
];
};
preview = {
@ -57,6 +71,23 @@
cursor_blink = true;
};
plugin = {
prepend_fetchers = [
{
id = "git";
name = "*";
run = "git";
}
{
id = "git";
name = "*/";
run = "git";
}
];
};
};
plugins = {
inherit
(pkgs.yaziPlugins)
@ -75,5 +106,4 @@
'';
};
};
};
}

View file

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

View file

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

View file

@ -31,8 +31,8 @@
timeouts = [
{
timeout = 300;
command = "${libgetExe pkgs.brightnessctl} -s set 10";
resumeCommand = "${libgetExe pkgs.brightnessctl} -r";
command = "${lib.getExe pkgs.brightnessctl} -s set 10";
resumeCommand = "${lib.getExe pkgs.brightnessctl} -r";
}
{

View file

@ -1,54 +1,15 @@
{
{self, ...}: {
imports = [
./fonts/fonts.nix
./options/gui.nix
"${self}/hand7s/nix/settings/substituters.nix"
"${self}/hand7s/nix/settings/trusted-public-keys.nix"
"${self}/hand7s/nix/package.nix"
./wayland/hyprland.nix
./wayland/river.nix
"${self}/hand7s/stylix/base16Scheme.nix"
"${self}/hand7s/stylix/cursor.nix"
"${self}/hand7s/stylix/defaults.nix"
"${self}/hand7s/stylix/fonts.nix"
"${self}/hand7s/stylix/image.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
"${self}/hand7s/"
];
}

View file

@ -1,24 +1,24 @@
{...}: {
stylix = {
base16Scheme = {
scheme = "Ólafur Bjarki Bogason";
name = "Tokyo Night Moon";
base00 = "#222436";
base01 = "#1e2030";
base02 = "#2d3f76";
base03 = "#636da6";
base04 = "#828bb8";
base05 = "#3b4261";
base06 = "#828bb8";
base07 = "#c8d3f5";
base08 = "#ff757f";
base09 = "#ffc777";
base0A = "#ffc777";
base0B = "#c3e88d";
base0C = "#86e1fc";
base0D = "#82aaff";
base0E = "#fca7ea";
base0F = "#c53b53";
scheme = "Tokyonight by Folke Lemaitre (https://github.com/folke)";
name = "Tokyonight";
base00 = "#24283b";
base01 = "#1f2335";
base02 = "#292e42";
base03 = "#565f89";
base04 = "#a9b1d6";
base05 = "#c0caf5";
base06 = "#c0caf5";
base07 = "#c0caf5";
base08 = "#f7768e";
base09 = "#ff9e64";
base0A = "#e0af68";
base0B = "#9ece6a";
base0C = "#1abc9c";
base0D = "#41a6b5";
base0E = "#bb9af7";
base0F = "#ff007c";
};
};
}

View file

@ -5,7 +5,7 @@
applications = 10;
desktop = 8;
popups = 10;
terminal = 8;
terminal = 10;
};
monospace = {

View file

@ -9,19 +9,22 @@
hyprpolkitagent = {
Unit = {
Description = "Hyprpolkitagent service.";
WantedBy = "graphical-session.target";
After = "graphical-session.target";
PartOf = "graphical-session.target";
};
Service = {
Type = "simple";
ExecStart = "${lib.getExe pkgs.hyprpolkitagent}";
Restart = "always";
RestartSec = 10;
RestartSec = 1;
TimeoutStopSec = 10;
};
Install = {
After = "graphical-session.target";
ConditionEnvironment = "WAYLAND_DISPLAY";
PartOf = "graphical-session.target";
WantedBy = [
"graphical-session.target"
];
};
};
};

View file

@ -1,30 +0,0 @@
{
pkgs,
lib,
...
}: {
systemd = {
user = {
services = {
yambar = {
Unit = {
Description = "Yambar service.";
WantedBy = "graphical-session.target";
};
Service = {
ExecStart = "${lib.getExe pkgs.yambar}";
Restart = "always";
RestartSec = 1;
};
Install = {
After = "graphical-session.target";
ConditionEnvironment = "WAYLAND_DISPLAY";
PartOf = "graphical-session.target";
};
};
};
};
};
}

View file

@ -16,11 +16,6 @@
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
systemd = {
enable = true;
enableXdgAutostart = true;
};
settings = {
monitor = ", 2560x1440@165.00Hz, 0x0, 1";
@ -31,7 +26,7 @@
layout = "dwindle";
snap = {
enabled = true;
enabled = false;
window_gap = "5";
monitor_gap = "5";
border_overlap = false;
@ -67,20 +62,6 @@
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";
@ -110,15 +91,17 @@
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start noctalis.service"
# "${lib.getExe' pkgs.systemd "systemctl"} --user start noctalis.service"
"${lib.getExe inputs.noctalia.packages.${pkgs.system}.default}"
"${lib.getExe' pkgs.hyprland "hyprctl"} setcursor material_light_cursors 20"
];
bind = [
"ALT, return, exec, ${lib.getExe pkgs.ghostty}"
"ALT, Q, killactive,"
"ALT SHIFT, Q, closeunfocused,"
"ALT, S, exec, ${lib.getExe pkgs.fuzzel}"
"ALT, S, exec, ${lib.getExe inputs.noctalia.packages.${pkgs.system}.default} ipc call launcher toggle"
"ALT, F, fullscreen, 0"
"ALT, L, exec, ${lib.getExe pkgs.hyprlock}"
@ -131,34 +114,32 @@
"ALT, up, movefocus, u"
"ALT, down, movefocus, d"
"ALT, 1, split-workspace, 1"
"ALT, 2, split-workspace, 2"
"ALT, 3, split-workspace, 3"
"ALT, 4, split-workspace, 4"
"ALT, 5, split-workspace, 5"
"ALT, 6, split-workspace, 6"
"ALT, 7, split-workspace, 7"
"ALT, 8, split-workspace, 8"
"ALT, 9, split-workspace, 9"
"ALT, 0, split-workspace, 10"
"ALT, 1, workspace, 1"
"ALT, 2, workspace, 2"
"ALT, 3, workspace, 3"
"ALT, 4, workspace, 4"
"ALT, 5, workspace, 5"
"ALT, 6, workspace, 6"
"ALT, 7, workspace, 7"
"ALT, 8, workspace, 8"
"ALT, 9, workspace, 9"
"ALT, 0, workspace, 10"
"ALT, H, togglespecialworkspace, special"
"ALT SHIFT, 1, split-movetoworkspace, 1"
"ALT SHIFT, 2, split-movetoworkspace, 2"
"ALT SHIFT, 3, split-movetoworkspace, 3"
"ALT SHIFT, 4, split-movetoworkspace, 4"
"ALT SHIFT, 5, split-movetoworkspace, 5"
"ALT SHIFT, 6, split-movetoworkspace, 6"
"ALT SHIFT, 7, split-movetoworkspace, 7"
"ALT SHIFT, 8, split-movetoworkspace, 8"
"ALT SHIFT, 9, split-movetoworkspace, 9"
"ALT SHIFT, 0, split-movetoworkspace, 10"
"ALT SHIFT, H, split-movetoworkspace, special"
"ALT SHIFT, 1, movetoworkspacesilent, 1"
"ALT SHIFT, 2, movetoworkspacesilent, 2"
"ALT SHIFT, 3, movetoworkspacesilent, 3"
"ALT SHIFT, 4, movetoworkspacesilent, 4"
"ALT SHIFT, 5, movetoworkspacesilent, 5"
"ALT SHIFT, 6, movetoworkspacesilent, 6"
"ALT SHIFT, 7, movetoworkspacesilent, 7"
"ALT SHIFT, 8, movetoworkspacesilent, 8"
"ALT SHIFT, 9, movetoworkspacesilent, 9"
"ALT SHIFT, 0, movetoworkspacesilent, 10"
"ALT SHIFT, H, movetoworkspacesilent, special"
"ALT, mouse_down, workspace, e+1"
"ALT, mouse_up, workspace, e-1"
"ALT, TAB, overview:toggle"
];
bindel = [
@ -205,6 +186,10 @@
initial_workspace_tracking = "2";
};
render = {
cm_auto_hdr = 0;
};
binds = {
workspace_back_and_forth = true;
allow_workspace_cycles = true;
@ -227,11 +212,9 @@
};
plugin = {
split-monitor-workspaces = {
count = 10;
keep_focused = 1;
enable_notifications = 1;
enable_persistent_workspaces = 1;
hyprscrolling = {
fullscreen_on_one_column = true;
follow_focus = true;
};
easymotion = {
@ -273,11 +256,16 @@
};
plugins = [
pkgs.hyprlandPlugins.hypr-dynamic-cursors
pkgs.hyprlandPlugins.xtra-dispatchers
pkgs.hyprlandPlugins.hyprwinwrap
pkgs.hyprlandPlugins.hyprgrass
pkgs.hyprlandPlugins.hyprscrolling
# pkgs.hyprlandPlugins.hypr-dynamic-cursors
# pkgs.hyprlandPlugins.xtra-dispatchers
# pkgs.hyprlandPlugins.hyprwinwrap
# pkgs.hyprlandPlugins.hyprgrass
# pkgs.hyprlandPlugins.hyprscrolling
# inputs.hyprcurs.packages.${pkgs.system}.hypr-dynamic-cursors
# inputs.hyprplugs.packages.${pkgs.system}.hyprscrolling
# inputs.hyprplugs.packages.${pkgs.system}.xtra-dispatchers
# inputs.hyprplugs.packages.${pkgs.system}.hyprwinwrap
];
};
};

View file

@ -102,8 +102,8 @@
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe pkgs.wayidle} -t=300 ${lib.getExe pkgs.brightnessctl} -s set 10
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe pkgs.wayidle} -t=600 ${lib.getExe pkgs.waylock}
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=300 ${lib.getExe pkgs.brightnessctl} -s set 10
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=600 ${lib.getExe pkgs.waylock}
'';
};
};

View file

@ -71,6 +71,10 @@
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service";
}
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service";
}
{
command = "${lib.getExe pkgs.sway-audio-idle-inhibit}";
}
@ -82,10 +86,6 @@
{
command = "${lib.getExe pkgs.swaykbdd}";
}
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service";
}
];
keybindings = lib.mkOptionDefault {
@ -138,7 +138,7 @@
"XF86AudioNext" = "exec ${lib.getExe pkgs.playerctl} next";
"XF86MonBrightnessDown" = "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
"XF86MonBrightnessUp" = "exec $${lib.getExe pkgs.brightnessctl} set +5%";
"XF86MonBrightnessUp" = "exec ${lib.getExe pkgs.brightnessctl} set +5%";
};
modes = {

View file

@ -16,6 +16,7 @@
};
};
kernelPackages = pkgs.linuxPackages_cachyos-server;
extraModulePackages = with config.boot.kernelPackages; [
rtl8821ce
yt6801

View file

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

View file

@ -1,8 +1,8 @@
{lib, ...}: {
{...}: {
boot = {
loader = {
systemd-boot = {
enable = lib.mkForce false;
enable = false;
sortKey = "nixos";
memtest86 = {
enable = true;

View file

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

View file

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

View file

@ -0,0 +1,39 @@
{
disko = {
devices = {
disk = {
main = {
device = "/dev/disk/by-id/ata-EAGET_SSD_256GB_EAGET20250505V00003";
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"
];
};
};
root = {
size = "100%";
content = {
type = "lvm_pv";
vg = "pool";
};
};
};
};
};
};
};
};
}

View file

@ -1,40 +1,6 @@
{
disko = {
devices = {
disk = {
main = {
device = "/dev/disk/by-id/ata-EAGET_SSD_256GB_EAGET20250505V00003";
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"
];
};
};
root = {
size = "100%";
content = {
type = "lvm_pv";
vg = "pool";
};
};
};
};
};
};
lvm_vg = {
pool = {
type = "lvm_vg";

View file

@ -6,8 +6,6 @@
environment = {
systemPackages = with pkgs; [
(lib.hiPrio uutils-coreutils-noprefix)
xdg-desktop-portal-hyprland
xdg-desktop-portal-gtk
uutils-findutils
uutils-diffutils
home-manager

View file

@ -7,15 +7,13 @@
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";
NIX_SSHOPTS = "-p 6969";
GRIMBLAST_HIDE_CURSOR = "0";
TERM = "xterm-256color";
};
enableAllTerminfo = true;
};
}

View file

@ -12,6 +12,8 @@
inputs.hyprland.homeManagerModules.default
inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops
inputs.nix-index-database.homeModules.nix-index
];
};
};

View file

@ -4,6 +4,23 @@
allowPing = true;
enable = true;
checkReversePath = false;
allowedUDPPorts = [
80
8080
8443
53350
53351
53353
];
allowedTCPPorts = [
80
8080
8443
53350
53351
53353
];
};
};
}

View file

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

View file

@ -3,7 +3,6 @@
settings = {
substituters = [
# cache.nixos.org
"https://nixos-cache-proxy.cofob.dev"
"https://cache.nixos.org"
# cache.garnix.org
"https://cache.garnix.io"

View file

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

View file

@ -0,0 +1,123 @@
{...}: {
services = {
forgejo = {
enable = true;
database = {
type = "postgres";
port = "${dbport}";
};
settings = {
DEFAULT = {
APP_NAME = "Forgejo";
APP_SLOGAN = "hand7s'es instance";
APP_DISPLAY_NAME_FORMAT = "{APP_NAME}: {APP_SLOGAN}.";
RUN_MODE = "prod";
};
repository = {
DEFAULT_PRIVATE = "last";
PREFERRED_LICENSES = "MIT";
DISABLE_HTTP_GIT = true;
USE_COMPAT_SSH_URI = true;
GO_GET_CLONE_URL_PROTOCOL = "ssh";
DEFAULT_BRANCH = "master";
};
"repository.pull-request" = {
WORK_IN_PROGRESS_PREFIXES = "[WIP]:";
};
"repository.issue" = {
MAX_PINNED = 2;
};
"repository.upload" = {
ENABLED = true;
FILE_MAX_SIZE = 25;
MAX_FILES = 10;
};
"repository.signing" = {
FORMAT = "openssh";
INITIAL_COMMIT = "always";
WIKI = "always";
CRUD_ACTIONS = "always";
MERGES = "always";
};
badges = {
ENABLED = false;
};
cors = {
ENABLED = false;
};
actions = {
ENABLED = false;
};
mailer = {
ENABLED = false;
};
cron = {
ENABLED = false;
};
metrics = {
ENABLED = false;
};
federation = {
ENABLED = false;
};
ui = {
DEFAULT_THEME = "forgejo-auto-tritanopia";
};
"ui.meta" = {
AUTHOR = "hand7s'es Forgejo instance";
DESCRIPTION = "Forgejo - by Codeberg.";
};
log = {
LEVEL = "Warn";
};
service = {
DISABLE_REGISTRATION = true;
};
"service.explore" = {
DISABLE_ORGANIZATIONS_PAGE = true;
};
server = {
DOMAIN = "git.hand7s.org";
ROOT_URL = "https://git.hand7s.org";
HTTP_PORT = 53350;
START_SSH_SERVER = false;
LFS_START_SERVER = false;
};
openid = {
ENABLE_OPENID_SIGNIN = true;
ENABLE_OPENID_SIGNUP = true;
};
cache = {
ADAPTER = "redis";
INTERVAL = "900";
HOST = "";
ITEM_TTL = "1h";
};
};
};
};
}

View file

@ -0,0 +1,91 @@
{...}: {
services = {
homepage-dashboard = {
enable = true;
listenPort = 8080;
settings = {
title = "hand7s homepage";
description = "duh";
theme = "dark";
background = "https://w.wallhaven.cc/full/1q/wallhaven-1q87xv.png";
color = "violet";
headerStyle = "boxed";
layout = [
{
Dev = {
iconsOnly = true;
};
}
];
};
bookmarks = [
{
Dev = [
{
GitHub = [
{
abbr = "GH";
href = "https://github.com/";
}
];
}
{
Forgejo = [
{
abbr = "Forge";
href = "https://git.hand7s.org/";
}
];
}
{
PivateBin = [
{
abbr = "PB";
href = "https://bin.hand7s.org/";
}
];
}
];
}
];
services = [
];
widgets = [
{
greeting = {
text_size = "xl";
text = "Hi, hand7s.";
};
}
{
search = {
provider = "google";
target = "_blank";
focus = true;
};
}
{
resources = {
cpu = true;
memory = true;
disk = "/";
cputemp = true;
uptime = true;
units = "metric";
refresh = 3000;
network = true;
};
}
];
};
};
}

View file

@ -5,7 +5,7 @@
allowSFTP = true;
openFirewall = true;
ports = [
5896
47345
];
settings = {

View file

@ -0,0 +1,43 @@
{...}: {
services = {
privatebin = {
enable = true;
enableNginx = true;
virtualHost = "bin.hand7s.org";
settings = {
main = {
name = "hand7s bin";
discussion = false;
qrcode = false;
compression = "none";
defaultformatter = "plaintext";
fileupload = false;
languageselection = false;
password = true;
sizelimit = 10 * 1000 * 1000;
template = "bootstrap5";
};
expire = {
default = "1week";
clone = false;
};
formatter_options = {
markdown = "Markdown";
plaintext = "Plain Text";
syntaxhighlighting = "Source Code";
};
traffic = {
limit = 5;
};
purge = {
limit = 0;
batchsize = 10;
};
};
};
};
}

View file

@ -1,8 +1,8 @@
{pkgs, ...}: {
{...}: {
services = {
scx = {
enable = true;
package = pkgs.scx_git.full;
# package = pkgs.scx_git.full;
scheduler = "scx_lavd";
};
};

View file

@ -13,7 +13,7 @@
];
videoDrivers = [
"amdgpu"
"modesetting"
];
xkb = {

View file

@ -1,62 +0,0 @@
{...}: {
services = {
yggdrasil = {
enable = true;
persistentKeys = false;
settings = {
Peers = [
# Germany :Erm:
"tcp://s-fra-0.sergeysedoy97.ru:65533"
"tls://s-fra-0.sergeysedoy97.ru:65534"
"tcp://x-fra-0.sergeysedoy97.ru:65533"
"tls://x-fra-0.sergeysedoy97.ru:65534"
"quic://x-fra-0.sergeysedoy97.ru:65535"
"tls://helium.avevad.com:13378"
"tcp://bode.theender.net:42069"
"tls://bode.theender.net:42169?key=f91b909f43829f8b20732b3bcf80cbc4bb078dd47b41638379a078e35984c9a4"
# Russia
"tcp://s-mow-0.sergeysedoy97.ru:65533"
"tls://s-mow-0.sergeysedoy97.ru:65534"
"tcp://x-mow-0.sergeysedoy97.ru:65533"
"tls://x-mow-0.sergeysedoy97.ru:65534"
"quic://x-mow-0.sergeysedoy97.ru:65535"
"tcp://s-mow-1.sergeysedoy97.ru:65533"
"tls://s-mow-1.sergeysedoy97.ru:65534"
"tcp://x-mow-1.sergeysedoy97.ru:65533"
"tls://x-mow-1.sergeysedoy97.ru:65534"
"quic://x-mow-1.sergeysedoy97.ru:65535"
"quic://kursk.cleverfox.org:15015"
"tls://kursk.cleverfox.org:15015"
"ws://kursk.cleverfox.org:15016"
"tcp://kzn1.neonxp.ru:7991"
"tls://kzn1.neonxp.ru:7992"
"ws://kzn1.neonxp.ru:7993"
"quic://kzn1.neonxp.ru:7994"
];
Listen = [
#
];
MulticastInterfaces = [
{
Regex = ".*";
Beacon = true;
Listen = false;
Password = "";
}
];
AllowedPublicKeys = [
#
];
IfName = "auto";
IfMTU = 65535;
NodeInfoPrivacy = false;
};
};
};
}

View file

@ -1,9 +1,9 @@
{...}: {
services = {
zerotierone = {
enable = true;
enable = false;
joinNetworks = [
# no
# nope
];
};
};

View file

@ -0,0 +1,77 @@
{config, ...}: {
services = {
zitadel = {
enable = true;
tlsMode = "external";
masterKeyFile = config.sops.secrets.zitadelMasterKey;
steps = {
FirstInstance = {
InstanceName = "zitadel.hand7s.org";
DefaultLanguage = "en";
LoginPolicy = {
AllowRegister = false;
};
Org = {
Name = "ZITADEL";
Human = {
UserName = "admin";
FirstName = "Bogdan";
LastName = "Litvinov";
DisplayName = "hand7s";
PasswordChangeRequired = true;
PreferredLanguage = "en";
Email = {
Address = "me@hand7s.org";
Verified = true;
};
};
};
};
};
settings = {
Port = 8443;
ExternalPort = 8443;
ExternalDomain = "zitadel.hand7s.org";
ExternalSecure = true;
Log = {
Level = "debug";
};
Telemetry = {
Enabled = false;
};
Database = {
postgres = {
Host = "${dbhost}";
Port = "${dbport}";
Database = "zitadel";
User = {
Username = "zitadel";
SSL = {
Mode = "disable";
};
};
};
};
Caches = {
Connectors = {
Redis = {
Enabled = true;
Addr = "${cahceaddress}";
Password = "${cahcepass}";
PoolSize = "900";
PoolTimeout = "1800s";
};
};
};
};
};
};
}

View file

@ -11,14 +11,6 @@
"networkmanager"
"docker"
];
openssh = {
authorizedKeys = {
keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDp2IIdR5jV1HyG4aiRX7SfTNrXDhCx5rTiFU40qkOKq litvinovb0@gmail.com"
];
};
};
};
};
};

View file

@ -9,6 +9,7 @@
"usb_storage"
"sd_mod"
"btrfs"
"amneziawg"
"cryptd"
];
@ -20,18 +21,23 @@
kernelModules = [
"amdgpu"
"zenpower"
"amneziawg"
];
luks = {
devices = {
cryptroot = {
device = "nvme-KINGSTON_SKC3000S_1024G_AA000000000000000013-part2";
device = "/dev/disk/by-id/nvme-KINGSTON_SKC3000S_1024G_AA000000000000000013-part2";
};
};
};
systemd = {
enable = true;
network = {
enable = true;
};
};
verbose = false;

View file

@ -1,5 +1,6 @@
{
config,
pkgs,
lib,
...
}: {
@ -20,15 +21,18 @@
extraModulePackages = with config.boot.kernelPackages; [
zenpower
v4l2loopback
amneziawg
];
kernelModules = [
"amdgpu"
"zenpower"
"v4l2loopback"
"amneziawg"
];
kernelParams = [
"video=DP-1:2560x1440@165"
"amd_pstate=guided"
"udev.log_priority=3"
"quiet"

View file

@ -1,8 +1,8 @@
{lib, ...}: {
{...}: {
boot = {
loader = {
systemd-boot = {
enable = lib.mkDefault false;
enable = false;
sortKey = "nixos";
memtest86 = {
enable = true;

View file

@ -1,81 +1,86 @@
{
{self, ...}: {
imports = [
./boot/initrd.nix
./boot/kernel.nix
./boot/lanzaboote.nix
./boot/plymouth.nix
./boot/tmp.nix
./boot/loader/systemd-boot.nix
./boot/zfs.nix
"${self}/s0mePC-nix/boot/initrd.nix"
"${self}/s0mePC-nix/boot/kernel.nix"
"${self}/s0mePC-nix/boot/lanzaboote.nix"
"${self}/s0mePC-nix/boot/plymouth.nix"
"${self}/s0mePC-nix/boot/tmp.nix"
"${self}/s0mePC-nix/boot/loader/systemd-boot.nix"
"${self}/s0mePC-nix/boot/zfs.nix"
./console/console.nix
"${self}/s0mePC-nix/disko/disk.nix"
"${self}/s0mePC-nix/disko/lvm_vg.nix"
./environment/systemPackages.nix
./environment/variables.nix
"${self}/s0mePC-nix/console/console.nix"
./hardware/amdgpu.nix
./hardware/cpu.nix
./hardware/graphics.nix
./hardware/openrazer.nix
./hardware/qmk.nix
./hardware/zram.nix
"${self}/s0mePC-nix/environment/systemPackages.nix"
"${self}/s0mePC-nix/environment/variables.nix"
./home-manager/users.nix
"${self}/s0mePC-nix/hardware/amdgpu.nix"
"${self}/s0mePC-nix/hardware/cpu.nix"
"${self}/s0mePC-nix/hardware/graphics.nix"
"${self}/s0mePC-nix/hardware/openrazer.nix"
"${self}/s0mePC-nix/hardware/qmk.nix"
"${self}/s0mePC-nix/hardware/zram.nix"
./i18n/locales.nix
"${self}/s0mePC-nix/home-manager/users.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
"${self}/s0mePC-nix/i18n/locales.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
./nix/settings/trusted-substituters.nix
"${self}/s0mePC-nix/networking/dhcp.nix"
"${self}/s0mePC-nix/networking/firewall.nix"
"${self}/s0mePC-nix/networking/hostname.nix"
"${self}/s0mePC-nix/networking/networkmanager.nix"
"${self}/s0mePC-nix/networking/wireguard.nix"
"${self}/s0mePC-nix/networking/nameservers.nix"
"${self}/s0mePC-nix/networking/hosts.nix"
"${self}/s0mePC-nix/networking/hostId.nix"
./nixpkgs/config.nix
./nixpkgs/system.nix
"${self}/s0mePC-nix/nix/package.nix"
"${self}/s0mePC-nix/nix/settings/allowed-users.nix"
"${self}/s0mePC-nix/nix/settings/experimental-features.nix"
"${self}/s0mePC-nix/nix/settings/substituters.nix"
"${self}/s0mePC-nix/nix/settings/trusted-public-keys.nix"
"${self}/s0mePC-nix/nix/settings/trusted-substituters.nix"
"${self}/s0mePC-nix/nix/settings/trusted-users.nix"
"${self}/s0mePC-nix/nix/settings/auto-optimise-store.nix"
./programs/gamescope.nix
./programs/gamemode.nix
./programs/nh.nix
./programs/steam.nix
./programs/ssh.nix
./programs/yubikey-touch-detector.nix
"${self}/s0mePC-nix/nixpkgs/config.nix"
"${self}/s0mePC-nix/nixpkgs/system.nix"
./security/polkit.nix
./security/rtkit.nix
./security/sudo.nix
./security/sudo-rs.nix
"${self}/s0mePC-nix/programs/gamescope.nix"
"${self}/s0mePC-nix/programs/gamemode.nix"
"${self}/s0mePC-nix/programs/nh.nix"
"${self}/s0mePC-nix/programs/steam.nix"
"${self}/s0mePC-nix/programs/ssh.nix"
"${self}/s0mePC-nix/programs/yubikey-touch-detector.nix"
"${self}/s0mePC-nix/programs/nekoray.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
./services/yubikey-agent.nix
./services/resolved.nix
"${self}/s0mePC-nix/security/polkit.nix"
"${self}/s0mePC-nix/security/rtkit.nix"
"${self}/s0mePC-nix/security/sudo.nix"
"${self}/s0mePC-nix/security/sudo-rs.nix"
"${self}/s0mePC-nix/security/pam/yubico.nix"
./sops/defaults.nix
./sops/secrets.nix
"${self}/s0mePC-nix/services/greetd.nix"
"${self}/s0mePC-nix/services/libinput.nix"
"${self}/s0mePC-nix/services/openssh.nix"
"${self}/s0mePC-nix/services/pipewire.nix"
"${self}/s0mePC-nix/services/netbird.nix"
"${self}/s0mePC-nix/services/qmk.nix"
"${self}/s0mePC-nix/services/scx.nix"
"${self}/s0mePC-nix/services/xserver.nix"
"${self}/s0mePC-nix/services/zapret.nix"
"${self}/s0mePC-nix/services/zerotier.nix"
"${self}/s0mePC-nix/services/yggdrasil.nix"
"${self}/s0mePC-nix/services/sunshine.nix"
"${self}/s0mePC-nix/services/usbmuxd.nix"
"${self}/s0mePC-nix/services/irqbalance.nix"
"${self}/s0mePC-nix/services/yubikey-agent.nix"
"${self}/s0mePC-nix/services/resolved.nix"
"${self}/s0mePC-nix/sops/defaults.nix"
"${self}/s0mePC-nix/sops/secrets.nix"
"${self}/hand7s/stylix/base16Scheme.nix"
"${self}/hand7s/stylix/cursor.nix"
@ -83,24 +88,24 @@
"${self}/hand7s/stylix/fonts.nix"
"${self}/hand7s/stylix/image.nix"
./system/name.nix
./system/stateVersion.nix
"${self}/s0mePC-nix/system/name.nix"
"${self}/s0mePC-nix/system/stateVersion.nix"
./systemd/oomd.nix
./systemd/slices/system-slice.nix
./systemd/slices/user-slice.nix
./systemd/slices/root-slice.nix
"${self}/s0mePC-nix/systemd/oomd.nix"
"${self}/s0mePC-nix/systemd/slices/system-slice.nix"
"${self}/s0mePC-nix/systemd/slices/user-slice.nix"
"${self}/s0mePC-nix/systemd/slices/root-slice.nix"
./time/timeZone.nix
"${self}/s0mePC-nix/time/timeZone.nix"
./users/users/hand7s.nix
./users/users/root.nix
./users/mutableUsers.nix
"${self}/s0mePC-nix/users/users/hand7s.nix"
"${self}/s0mePC-nix/users/users/root.nix"
"${self}/s0mePC-nix/users/mutableUsers.nix"
./virtualisation/docker.nix
"${self}/s0mePC-nix/virtualisation/docker.nix"
./xdg/icons.nix
./xdg/mime.nix
./xdg/portal.nix
"${self}/s0mePC-nix/xdg/icons.nix"
"${self}/s0mePC-nix/xdg/mime.nix"
"${self}/s0mePC-nix/xdg/portal.nix"
];
}

46
s0mePC-nix/disko/disk.nix Normal file
View file

@ -0,0 +1,46 @@
{
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";
};
};
};
};
};
};
};
};
};
}

View file

@ -1,47 +1,6 @@
{
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";

View file

@ -6,9 +6,11 @@
environment = {
systemPackages = with pkgs; [
(lib.hiPrio uutils-coreutils-noprefix)
xdg-desktop-portal-gtk
uutils-findutils
uutils-diffutils
xdg-desktop-portal
xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland
home-manager
];
};

View file

@ -7,9 +7,6 @@
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";

View file

@ -1,7 +1,7 @@
{...}: {
hardware = {
openrazer = {
enable = true;
enable = false;
users = [
"hand7s"
];

View file

@ -13,6 +13,7 @@
inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops
inputs.nix-index-database.homeModules.nix-index
inputs.noctalia.homeModules.default
];
};

View file

@ -4,15 +4,27 @@
allowPing = true;
enable = true;
checkReversePath = false;
allowedUDPPorts = [
9993
2080
interfaces = {
eno1 = rec {
allowedTCPPortRanges = [
{
from = 1714;
to = 1764;
}
];
allowedUDPPortRanges = allowedTCPPortRanges;
};
salt-hand7s-pc = rec {
allowedTCPPorts = [
9993
2080
6567
];
allowedUDPPorts = allowedTCPPorts;
};
};
};
};
}

View file

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

View file

@ -3,7 +3,6 @@
settings = {
substituters = [
# cache.nixos.org
"https://nixos-cache-proxy.cofob.dev"
"https://cache.nixos.org"
# cache.garnix.org
"https://cache.garnix.io"
@ -13,6 +12,7 @@
"https://ags.cachix.org"
"https://hyprland.cachix.org"
"https://chaotic-nyx.cachix.org/"
"https://colmena.cachix.org"
];
};
};

View file

@ -12,6 +12,7 @@
"ags.cachix.org-1:naAvMrz0CuYqeyGNyLgE010iUiuf/qx6kYrUv3NwAJ8="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
"colmena.cachix.org-1:7BzpDnjjH8ki2CT3f6GdOk7QAzPOl+1t3LvTLXqYcSg="
];
};
};

View file

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

View file

@ -2,6 +2,7 @@
programs = {
gamemode = {
enable = true;
enableRenice = true;
};
};
}

View file

@ -0,0 +1,11 @@
{...}: {
programs = {
nekoray = {
enable = true;
tunMode = {
enable = true;
setuid = true;
};
};
};
}

View file

@ -0,0 +1,15 @@
{...}: {
security = {
pam = {
yubico = {
enable = false;
debug = true;
mode = "challenge-response";
control = "sufficient";
id = [
"1873055870"
];
};
};
};
}

View file

@ -1,11 +1,15 @@
{pkgs, ...}: {
{
pkgs,
lib,
...
}: {
services = {
greetd = {
enable = true;
restart = false;
settings = {
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet -r -t -c Hyprland --greet-align center";
command = "${lib.getExe pkgs.tuigreet} -r -t -c ${lib.getExe pkgs.hyprland} --greet-align center";
user = "greeter";
};
};

View file

@ -5,7 +5,7 @@
allowSFTP = true;
openFirewall = true;
ports = [
49560
45734
];
settings = {

View file

@ -4,7 +4,7 @@
enable = true;
dnsovertls = "true";
dnssec = "true";
llmnr = "resolve";
llmnr = "true";
domains = [
"~."
];

View file

@ -1,9 +1,9 @@
{pkgs, ...}: {
{...}: {
services = {
scx = {
enable = true;
package = pkgs.scx_git.full;
scheduler = "scx_lavd";
# package = pkgs.scx_git.full;
scheduler = "scx_cosmos";
};
};
}

View file

@ -4,7 +4,7 @@
enable = true;
capSysAdmin = true;
openFirewall = true;
autoStart = false;
autoStart = true;
};
};
}

View file

@ -18,6 +18,7 @@
xkb = {
layout = "us, ru";
variant = "";
options = "grp:caps_toggle";
};
};

View file

@ -4,7 +4,7 @@
enable = true;
persistentKeys = false;
settings = {
# PrivateKey = ""; it's won't work as i thought :D;
PrivateKey = "${yggKeyPC}";
Peers = [
# Germany :Erm:

View file

@ -1,7 +1,8 @@
{...}: {
{pkgs, ...}: {
services = {
yubikey-agent = {
enab = true;
package = pkgs.yubikey-agent;
enable = false;
};
};
}

View file

@ -2,6 +2,9 @@
services = {
zerotierone = {
enable = true;
joinNetworks = [
# nope
];
};
};
}

View file

@ -5,21 +5,12 @@
description = "me";
isSystemUser = false;
isNormalUser = true;
initialHashedPassword = "$6$vNggR38kZoLNZglM$QM5Qc8Ck1ko9YgME4RpV7KGLb1.UBynKmmWwABDI1GrMl54my7r7sXHiQ3VgqpMwaUtHeifJh5Zv.QR8lGXd50";
initialHashedPassword = "$6$ckgRhNWmJgSwOUpJ$kfeAdokd5fa76HWbTmWN2YXx4M/PQVOTJku1ODbqbBhEkUFiLftdaJFRnNXfIM3Jtz0ShoRMSVCB7mDkxDrdi/";
extraGroups = [
"wheel"
"networkmanager"
"docker"
"openrazer"
];
openssh = {
authorizedKeys = {
keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDp2IIdR5jV1HyG4aiRX7SfTNrXDhCx5rTiFU40qkOKq litvinovb0@gmail.com"
];
};
};
};
};
};

View file

@ -2,7 +2,7 @@
users = {
users = {
root = {
initialHashedPassword = "$6$vNggR38kZoLNZglM$QM5Qc8Ck1ko9YgME4RpV7KGLb1.UBynKmmWwABDI1GrMl54my7r7sXHiQ3VgqpMwaUtHeifJh5Zv.QR8lGXd50";
initialHashedPassword = "$6$n4OLMvYHHStHvtmr$6OL0NV1dEM2b6oJRewkhuoFxM80lI67tfbJ6QkCg8WAA1gbeKrcwDAuJjm8zvpY4zcDR3Z5Zbo8uebfOi6XXF0";
};
};
};

View file

@ -7,21 +7,21 @@
common = {
default = [
"gtk"
"wlr"
];
};
sway = {
hyprland = {
preferred = [
"gtk"
"wlr"
"hyprland"
];
};
};
extraPortals = with pkgs; [
xdg-desktop-portal
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr
xdg-desktop-portal-hyprland
];
};
};

View file

@ -80,6 +80,6 @@
zfs = lib.mkForce false;
};
consoleLogLevel = 0;
# consoleLogLevel = 0;
};
}

View file

@ -1,5 +1,8 @@
{
{self, ...}: {
imports = [
./disko/disk.nix
./disko/lvm_vg.nix
./boot/loader/systemd-boot.nix
./boot/lanzaboote.nix
./boot/initrd.nix
@ -80,9 +83,6 @@
./system/stateVersion.nix
./systemd/oomd.nix
./systemd/slices/system-slice.nix
./systemd/slices/user-slice.nix
./systemd/slices/root-slice.nix
./time/timeZone.nix

View file

@ -0,0 +1,47 @@
{...}: {
disko = {
devices = {
disk = {
main = {
device = "/dev/disk/by-id/ata-ST92503010AS_5YH0CJFL";
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";
};
};
};
};
};
};
};
};
};
}

View file

@ -1,48 +1,6 @@
{
{...}: {
disko = {
devices = {
disk = {
main = {
device = "/dev/disk/by-id/ata-CT480BX500SSD1_1935E1973FA4";
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";

View file

@ -6,7 +6,9 @@
environment = {
systemPackages = with pkgs; [
(lib.hiPrio uutils-coreutils-noprefix)
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
xdg-desktop-portal
uutils-findutils
uutils-diffutils
home-manager

View file

@ -6,9 +6,6 @@
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";

View file

@ -13,7 +13,7 @@
inputs.chaotic.homeManagerModules.default
inputs.sops-nix.homeManagerModules.sops
inputs.noctalia.homeModules.default
inputs.nix-index-database.homeModules.nix-index
];
};
};

View file

@ -1,7 +1,64 @@
{...}: {
networking = {
hosts = {
# Nope
# EVA00
"100.109.169.141" = [
"eva00-nix.netbird.cloud"
"eva00-nix"
];
"90.156.226.152" = [
"eva00-nix.lan"
"eva00-nix"
];
"200:deb2:ed25:a9e5:e30:4900:f88f:cb87" = [
"eva00-nix.ygg"
"eva00-nix"
];
# EVA01
"100.109.107.176" = [
"eva01-nix.netbird.cloud"
"eva01-nix"
];
"37.114.50.235" = [
"eva01-nix.lan"
"eva01-nix"
];
"200:6ef:a61f:2f01:71d4:196:ab70:2103" = [
"eva01-nix.ygg"
"eva01-nix"
];
# EVA02
"100.109.178.135" = [
"eva02-nix.netbird.cloud"
"eva02-nix"
];
"51.195.222.85" = [
"eva02-nix.lan"
"eva02-nix"
];
"201:52d6:c753:c1fd:f8b6:5897:cc6a:e1be" = [
"eva02-nix.ygg"
"eva02-nix"
];
# nerv-nix
"100.109.7.114" = [
"nerv-nix.netbird.cloud"
"nerv-nix"
];
"200:7abc:53c9:be8a:9941:96d:221b:cc76" = [
"nerv-nix.ygg"
"nerv-nix"
];
};
};
}

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