Compare commits

...

12 Commits

Author SHA1 Message Date
b2bb9dd64b style: cursor 2025-04-03 23:39:04 +03:00
872d60463b style: font 2025-04-03 23:39:04 +03:00
5e39dd375f system: update 2025-04-03 23:39:04 +03:00
8c39e606e3 feat(yazi): add d drive shortcut 2025-04-03 23:39:04 +03:00
d275bc88b2 feat: add my custom dns server 2025-04-03 23:39:04 +03:00
3acbf43b4e feat: add pulsemixer 2025-04-03 23:39:04 +03:00
729fe36326 fix: brightness setting 2025-04-03 23:39:04 +03:00
530be0cf44 feat: kitty to ghostty 2025-04-03 23:39:04 +03:00
6105e157c7 pkgs: add some utils 2025-04-03 23:39:04 +03:00
4b0e3a61e9 feat(ags): add battery bar 2025-04-03 23:39:04 +03:00
680b3cd3d6 fix(ags): wifi widget 2025-04-03 23:39:04 +03:00
830336ee06 feat: postgres 2025-04-03 23:39:04 +03:00
30 changed files with 271 additions and 214 deletions

187
flake.lock generated
View File

@ -6,11 +6,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1740876632,
"narHash": "sha256-u695YUS3R5HI1VQp7feCifWYOn3Gh6yGde1vp5rKqTg=",
"lastModified": 1742237177,
"narHash": "sha256-SZO34S9RKyp0Vub/7JFyNrpxtS/i+2q6Vqi4NIF5NH0=",
"owner": "ezKEa",
"repo": "aagl-gtk-on-nix",
"rev": "5505af25160f16ad26f9107aebee9ea7713b59d9",
"rev": "796472887bd6362917f26f3ceac019ef21a39e75",
"type": "github"
},
"original": {
@ -58,11 +58,11 @@
]
},
"locked": {
"lastModified": 1741282631,
"narHash": "sha256-jZE1CmQ53uN1Gq4FjaLFzSSjDqzL0pG4mdRbjBqSmho=",
"lastModified": 1742213273,
"narHash": "sha256-0l0vDb4anfsBu1rOs94bC73Hub+xEivgBAo6QXl2MmU=",
"owner": "hyprwm",
"repo": "aquamarine",
"rev": "81498562d0f53e613d30368bb5b076784fa86f80",
"rev": "484b732195cc53f4536ce4bd59a5c6402b1e7ccf",
"type": "github"
},
"original": {
@ -97,11 +97,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1741757048,
"narHash": "sha256-MN3LM3xugPm8EnDQ57RxS8WWhyPYF4eGUicAvu6Sk9k=",
"lastModified": 1743315309,
"narHash": "sha256-d2Ly7HixgLZQGnqU+1CRnIrJ6/OFb4jgmzpPsYEq/eY=",
"owner": "ayugram-port",
"repo": "ayugram-desktop",
"rev": "715dc517f4f243fb406a6a2f17edb8833cc33463",
"rev": "a8a612d86ed4f85c4f345706342a23a7001aaae4",
"type": "github"
},
"original": {
@ -263,24 +263,6 @@
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1714641030,
"narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": [
@ -412,11 +394,11 @@
]
},
"locked": {
"lastModified": 1741791118,
"narHash": "sha256-4Y427uj0eql4yRU5rely3EcOlB9q457UDbG9omPtXiA=",
"lastModified": 1743351736,
"narHash": "sha256-bpPX3E8EG4tGuMlu3+fFUfRYlNRCmQk2PFfnZDpgroM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "18780912345970e5b546b1b085385789b6935a83",
"rev": "09280e17bbd29536efd1549751038fa155489bd4",
"type": "github"
},
"original": {
@ -462,11 +444,11 @@
]
},
"locked": {
"lastModified": 1738664950,
"narHash": "sha256-xIeGNM+iivwVHkv9tHwOqoUP5dDrtees34bbFKKMZYs=",
"lastModified": 1742215578,
"narHash": "sha256-zfs71PXVVPEe56WEyNi2TJQPs0wabU4WAlq0XV7GcdE=",
"owner": "hyprwm",
"repo": "hyprcursor",
"rev": "7c6d165e1eb9045a996551eb9f121b6d1b30adc3",
"rev": "2fd36421c21aa87e2fe3bee11067540ae612f719",
"type": "github"
},
"original": {
@ -520,11 +502,11 @@
"xdph": "xdph"
},
"locked": {
"lastModified": 1741788549,
"narHash": "sha256-Ot/AuQGw5KJwHjyTMHWmyaduNkcE58bOCmyitZ4VxEQ=",
"lastModified": 1743297135,
"narHash": "sha256-nkbX1N0UxFIQTq794UxffLUg3a/wFy/Zf6goUtzmEug=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "e86d3a14e46d19d8a47f8ceb6410546715d45f10",
"rev": "da2d7c3971d40f841f2afd7def8e4bad9a351e41",
"type": "github"
},
"original": {
@ -550,11 +532,11 @@
]
},
"locked": {
"lastModified": 1738966025,
"narHash": "sha256-MzgrF0jKlTNnNS33D8PwI5z2MJ1Tzf5MQVf/oms2pdw=",
"lastModified": 1743339740,
"narHash": "sha256-G6a7R/gb1xH0yI2uevTmDpxZf6rvMh1lOu0gYrqVu5U=",
"owner": "hyprwm",
"repo": "hyprland-plugins",
"rev": "4f48dbe12f3cbbeb4d31c91c67b21edbc5b4b451",
"rev": "6dca4ece21864e329394b81cfc767778089097e2",
"type": "github"
},
"original": {
@ -697,11 +679,11 @@
]
},
"locked": {
"lastModified": 1741123584,
"narHash": "sha256-mprerMlucqtirmbx6L3VoFnF2bGYc2WSUCj7tuc6xTQ=",
"lastModified": 1741534688,
"narHash": "sha256-EV3945SnjOCuRVbGRghsWx/9D89FyshnSO1Q6/TuQ14=",
"owner": "hyprwm",
"repo": "hyprutils",
"rev": "6b0154b183f9539097f13af9b5da78ca24da6df2",
"rev": "dd1f720cbc2dbb3c71167c9598045dd3261d27b3",
"type": "github"
},
"original": {
@ -751,19 +733,7 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1714640452,
"narHash": "sha256-QBx10+k6JWz6u7VsohfSw8g8hjdBZEf8CFzXH1/1Z94=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz"
}
},
"nixpkgs-stable": {
"nixpkgs-fixed": {
"locked": {
"lastModified": 1740743217,
"narHash": "sha256-brsCRzLqimpyhORma84c3W2xPbIidZlIc3JGIuQVSNI=",
@ -772,6 +742,22 @@
"rev": "b27ba4eb322d9d2bf2dc9ada9fd59442f50c8d7c",
"type": "github"
},
"original": {
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b27ba4eb322d9d2bf2dc9ada9fd59442f50c8d7c",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1743231893,
"narHash": "sha256-tpJsHMUPEhEnzySoQxx7+kA+KUtgWqvlcUBqROYNNt0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c570c1f5304493cafe133b8d843c7c1c4a10d3a6",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-24.11",
@ -797,11 +783,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1741379970,
"narHash": "sha256-Wh7esNh7G24qYleLvgOSY/7HlDUzWaL/n4qzlBePpiw=",
"lastModified": 1743095683,
"narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "36fd87baa9083f34f7f5027900b62ee6d09b1f2f",
"rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6",
"type": "github"
},
"original": {
@ -813,11 +799,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1741246872,
"narHash": "sha256-Q6pMP4a9ed636qilcYX8XUguvKl/0/LGXhHcRI91p0U=",
"lastModified": 1742669843,
"narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "10069ef4cf863633f57238f179a0297de84bd8d3",
"rev": "1e5b653dff12029333a6546c11e108ede13052eb",
"type": "github"
},
"original": {
@ -829,27 +815,27 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1741865919,
"narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=",
"lastModified": 1742071653,
"narHash": "sha256-BIyMLt0DhN8vSeRPnSxfIJVKL2MYxu/kM14y1mD1s24=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "573c650e8a14b2faa0041645ab18aed7e60f0c9a",
"rev": "30b27177a006d425120fb850a64ceb792636501a",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "master",
"repo": "nixpkgs",
"rev": "30b27177a006d425120fb850a64ceb792636501a",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1731763621,
"narHash": "sha256-ddcX4lQL0X05AYkrkV2LMFgGdRvgap7Ho8kgon3iWZk=",
"lastModified": 1743076231,
"narHash": "sha256-yQugdVfi316qUfqzN8JMaA2vixl+45GxNm4oUfXlbgw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c69a9bffbecde46b4b939465422ddc59493d3e4d",
"rev": "6c5963357f3c1c840201eda129a99d455074db04",
"type": "github"
},
"original": {
@ -875,22 +861,6 @@
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1715534503,
"narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "2057814051972fa1453ddfb0d98badbea9b83c06",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts",
@ -924,11 +894,11 @@
]
},
"locked": {
"lastModified": 1741379162,
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
"lastModified": 1742649964,
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
"type": "github"
},
"original": {
@ -946,10 +916,10 @@
"hyprland": "hyprland",
"hyprland-plugins": "hyprland-plugins",
"nixpkgs": "nixpkgs_5",
"nixpkgs-fixed": "nixpkgs-fixed",
"nixpkgs-stable": "nixpkgs-stable",
"sops-nix": "sops-nix",
"stylix": "stylix",
"tlock": "tlock"
"stylix": "stylix"
}
},
"sops-nix": {
@ -957,11 +927,11 @@
"nixpkgs": "nixpkgs_6"
},
"locked": {
"lastModified": 1741644481,
"narHash": "sha256-E0RrMykMtEv15V3QhpsFutgoSKhL1JBhidn+iZajOyg=",
"lastModified": 1743305778,
"narHash": "sha256-Ux/UohNtnM5mn9SFjaHp6IZe2aAnUCzklMluNtV6zFo=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "e653d71e82575a43fe9d228def8eddb73887b866",
"rev": "8e873886bbfc32163fe027b8676c75637b7da114",
"type": "github"
},
"original": {
@ -992,11 +962,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1741801299,
"narHash": "sha256-ZN5xn3HmG5+RWBc3gGdRfkyt98Tc1IhsUK7txwAw46s=",
"lastModified": 1743347063,
"narHash": "sha256-2wCoQhyHo3lIRkm/Y4d2ViknCQHhoS2qGvjm//Noo90=",
"owner": "danth",
"repo": "stylix",
"rev": "9e3ab4d208e2cc2aef5ab0f8e18932ebf8064fc5",
"rev": "eede71351571c60b87dbf9eefb7ddf2b11fb1354",
"type": "github"
},
"original": {
@ -1117,27 +1087,6 @@
"type": "github"
}
},
"tlock": {
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_8"
},
"locked": {
"lastModified": 1716429453,
"narHash": "sha256-6raIb7D7B/KQtKy63ixVRAJ7AN30JI7w/XGI2W8fuRk=",
"ref": "refs/heads/main",
"rev": "5091452ae294c4b424293ae4ffdcdbc8f04601fb",
"revCount": 343,
"submodules": true,
"type": "git",
"url": "https://github.com/eklairs/tlock"
},
"original": {
"submodules": true,
"type": "git",
"url": "https://github.com/eklairs/tlock"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
@ -1188,11 +1137,11 @@
]
},
"locked": {
"lastModified": 1737634991,
"narHash": "sha256-dBAnb7Kbnier30cA7AgxVSxxARmxKZ1vHZT33THSIr8=",
"lastModified": 1741934139,
"narHash": "sha256-ZhTcTH9FoeAtbPfWGrhkH7RjLJZ7GeF18nygLAMR+WE=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "e09dfe2726c8008f983e45a0aa1a3b7416aaeb8a",
"rev": "150b0b6f52bb422a1b232a53698606fe0320dde0",
"type": "github"
},
"original": {

View File

@ -18,13 +18,13 @@
inputs = {
aagl.url = "github:ezKEa/aagl-gtk-on-nix";
nixpkgs.url = "github:nixos/nixpkgs/master";
nixpkgs.url = "github:nixos/nixpkgs/30b27177a006d425120fb850a64ceb792636501a";
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.11";
nixpkgs-fixed.url = "github:nixos/nixpkgs/b27ba4eb322d9d2bf2dc9ada9fd59442f50c8d7c";
sops-nix.url = "github:Mic92/sops-nix";
stylix.url = "github:danth/stylix";
ags.url = "github:Aylur/ags";
ayugram-desktop.url = "github:/ayugram-port/ayugram-desktop/release?submodules=1";
tlock.url = "git+https://github.com/eklairs/tlock?submodules=1";
hyprland.url = "github:hyprwm/Hyprland";
hyprland-plugins = {
@ -38,7 +38,7 @@
};
};
outputs = { self, nixpkgs, nixpkgs-stable, home-manager, ... }@inputs: let
outputs = { self, nixpkgs, nixpkgs-stable, nixpkgs-fixed, home-manager, ... }@inputs: let
system = "x86_64-linux";
in {
nixosConfigurations = {
@ -48,6 +48,10 @@
inherit system;
config.allowUnfree = true;
};
pkgs-fixed = import nixpkgs-fixed {
inherit system;
config.allowUnfree = true;
};
inherit inputs system;
};
modules = [ ./host/Rias/configuration.nix ];
@ -59,6 +63,10 @@
inherit system;
config.allowUnfree = true;
};
pkgs-fixed = import nixpkgs-fixed {
inherit system;
config.allowUnfree = true;
};
inherit inputs system;
};
modules = [ ./host/Senko/configuration.nix ];
@ -70,6 +78,10 @@
inherit system;
config.allowUnfree = true;
};
pkgs-fixed = import nixpkgs-fixed {
inherit system;
config.allowUnfree = true;
};
inherit inputs system;
};
modules = [ ./host/Eclipse/configuration.nix ];

View File

@ -1,4 +1,4 @@
{ config, pkgs, pkgs-stable, lib, inputs, ...}: {
{ config, pkgs, pkgs-stable, pkgs-fixed, lib, inputs, ...}: {
imports = [
./secrets/secrets.nix
./modules/aagl.nix
@ -16,6 +16,7 @@
inherit config;
inherit pkgs;
inherit pkgs-stable;
inherit pkgs-fixed;
inherit lib;
inherit inputs;
name = "chest";

View File

@ -1,4 +1,4 @@
{ config, pkgs, pkgs-stable, lib, inputs, ...}: {
{ config, pkgs, pkgs-stable, pkgs-fixed, lib, inputs, ...}: {
imports = [
./secrets/secrets.nix
./modules/grub.nix
@ -16,6 +16,7 @@
inherit config;
inherit pkgs;
inherit pkgs-stable;
inherit pkgs-fixed;
inherit lib;
inherit inputs;
name = "sweetbread";

View File

@ -1,4 +1,4 @@
{ config, pkgs, pkgs-stable, lib, inputs, ...}: {
{ config, pkgs, pkgs-stable, pkgs-fixed, lib, inputs, ...}: {
imports = [
./secrets/secrets.nix
./modules/grub.nix
@ -14,6 +14,7 @@
inherit config;
inherit pkgs;
inherit pkgs-stable;
inherit pkgs-fixed;
inherit lib;
inherit inputs;
name = "sweetbread";
@ -23,4 +24,6 @@
hardware.bluetooth.enable = true;
host.laptop = true;
environment.systemPackages = [ pkgs.dbgate ];
}

View File

@ -17,19 +17,13 @@
helix
];
fonts.packages = with pkgs; [
jetbrains-mono
noto-fonts
(google-fonts.override{fonts=["Press Start 2P" "Overpass Mono"];})
noto-fonts-emoji
noto-fonts-cjk-sans
twemoji-color-font
font-awesome
powerline-fonts
powerline-symbols
ubuntu_font_family
unifont
nerd-fonts.symbols-only
corefonts
fonts = {
enableDefaultPackages = false;
packages = with pkgs; [
jetbrains-mono # Best mono font
noto-fonts-cjk-sans # Japanese
powerline-symbols # Console decoration
unifont # Other
];
};
}

View File

@ -3,6 +3,7 @@
./host/bluetooth.nix
./host/bootloader.nix
./host/console.nix
./host/db.nix
./host/env.nix
./host/gamemode.nix
./host/gpg.nix
@ -12,12 +13,13 @@
./host/sound.nix
./host/virtmanager.nix
./host/vpn.nix
./host/network.nix
];
programs.hyprland.enable = true;
services = {
udisks2.enable = true;
fstrim.enable = true;
upower.enable = true;
};
networking.networkmanager.enable = true;
}

10
modules/host/db.nix Normal file
View File

@ -0,0 +1,10 @@
{ lib, ... }:{
services.postgresql = {
enable = true;
ensureDatabases = [ "mydatabase" ];
authentication = lib.mkOverride 10 ''
#type database DBuser auth-method
local all all trust
'';
};
}

15
modules/host/network.nix Normal file
View File

@ -0,0 +1,15 @@
{
networking = {
enableIPv6 = true;
useDHCP = false;
nameservers = [ "193.222.99.172" "1.1.1.1" ];
dhcpcd.extraConfig = "nohook resolv.conf";
networkmanager = {
enable = true;
dns = "none";
insertNameservers = [ "193.222.99.172" "1.1.1.1" ];
};
};
}

View File

@ -19,8 +19,8 @@
environment.etc = {
"v2raya/ru_geoip.dat".source = pkgs.fetchurl {
name = "geoip.dat";
url = "https://github.com/runetfreedom/russia-blocked-geoip/releases/download/202502081519/geoip.dat";
hash = "sha256-uzv+aNlTD/UycNK2WWbI9timBbaFLAK3ME/lOrzpFdg=";
url = "https://github.com/runetfreedom/russia-blocked-geoip/releases/download/202503301521/geoip.dat";
hash = "sha256-IhMK8IzAYo1RtTFCPKaJ515JtZHv08UXDssg3fPgh+I=";
};
"v2raya/bolt.db".source = config.sops.secrets.vpn_bolt.path;

View File

@ -1,6 +1,5 @@
{
imports = [
./user/kitty.nix
./user/qt.nix
./user/sops.nix
./user/neofetch.nix
@ -12,6 +11,7 @@
./user/btop.nix
./user/wofi.nix
./user/mako.nix
./user/ghostty.nix
./user/packages/art.nix
./user/packages/desktop.nix
./user/packages/coding.nix

View File

@ -16,6 +16,10 @@
];
};
home.packages = with pkgs; [
pulsemixer
];
wayland.windowManager.hyprland.settings.exec-once = [ "ags run" ];
xdg.configFile."ags".source = (pkgs.callPackage ./packages/drvs/ags.nix { colors = config.lib.stylix.colors; });

11
modules/user/ghostty.nix Normal file
View File

@ -0,0 +1,11 @@
{
programs.ghostty = {
enable = true;
enableZshIntegration = true;
settings = {
confirm-close-surface = false;
copy-on-select = false;
title-report = true;
};
};
}

View File

@ -1,14 +0,0 @@
{ lib, pkgs, ... }: {
programs.kitty = {
enable = true;
settings = lib.mkDefault {
dynamic_background_opacity = "yes";
background_opacity = 0.5;
background_blur = true;
background = "#1d2021";
font_size = 13.0;
cursor_blink_interval = "0.5 ease-in-out";
};
};
programs.zsh.envExtra = "TERM=xterm-256color";
}

View File

@ -1,5 +1,5 @@
{ pkgs-stable, ... }: {
home.packages = with pkgs-stable; [
{ pkgs-fixed, ... }: {
home.packages = with pkgs-fixed; [
(blender.override { cudaSupport = true; })
aseprite
];

View File

@ -1,5 +1,5 @@
{ pkgs, pkgs-stable, ... }: {
home.packages = with pkgs-stable; [
{ pkgs-fixed, ... }: {
home.packages = with pkgs-fixed; [
vscode
jetbrains.pycharm-community
jetbrains.idea-community

View File

@ -1,12 +1,13 @@
{ pkgs, inputs, pkgs-stable, ... }: {
{ pkgs, inputs, pkgs-stable, pkgs-fixed, ... }: {
home.packages = with pkgs; [
google-chrome
inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop
pkgs-stable.vesktop
# pkgs-stable.vesktop
vesktop
obs-studio
mpv
obsidian
thunderbird
pkgs-fixed.thunderbird
libreoffice
];
}

View File

@ -10,6 +10,8 @@
echo \$surface0: \#${colors.base02}\; >> colors.scss
echo \$fg: \#${colors.base05}\; >> colors.scss
echo \$accent: \#${colors.base0B}\; >> colors.scss
echo \#${colors.base0B} > accent.css
'';
installPhase = ''
@ -17,5 +19,6 @@
mkdir $out
cp $src/* $out -r
mv colors.scss $out
mv accent.css $out
'';
}

View File

@ -91,7 +91,7 @@ window.Bar {
.AudioSlider icon { margin-left: 8px; }
.Workspaces, .Layout, .Media, .SysTray, .AudioSlider, .Time {
.Workspaces, .Wifi, .Layout, .Media, .SysTray, .AudioSlider, .Battery, .Time {
@extend %item;
}
}

View File

@ -1,11 +1,16 @@
import { bind } from "astal"
import { execAsync } from "astal/process"
import Wp from "gi://AstalWp"
export default function Audio() {
const speaker = Wp.get_default()?.audio.defaultSpeaker!
return <box className="AudioSlider">
return <button
className="AudioSlider"
onClicked={() => { execAsync("ghostty --title=pulsemixer -e pulsemixer") }}>
<box>
<icon icon={bind(speaker, "volumeIcon")} />
<label label={bind(speaker, "volume").as(v => `${Math.floor(v*100)}%`)} />
</box>
</button>
}

View File

@ -1,14 +1,30 @@
import { bind } from "astal"
import Battery from "gi://AstalBattery"
import { bind } from "astal";
import Battery from "gi://AstalBattery";
import accent from "../../accent.css";
export default function BatteryLevel() {
const bat = Battery.get_default()
const bat = Battery.get_default();
const percent = bind(bat, "percentage").as(p => Math.floor(p * 100));
return <box className="Battery"
visible={bind(bat, "isPresent")}>
return (
<box
className="Battery"
visible={bind(bat, "isPresent")}
css={percent.as(p => `
background-image: linear-gradient(
to right,
${accent} 0%,
${accent} ${p}%,
transparent ${p}%,
transparent 100%
);
background-size: 100% 3px;
background-repeat: no-repeat;
background-position: bottom;
`)}
>
<icon icon={bind(bat, "batteryIconName")} />
<label label={bind(bat, "percentage").as(p =>
`${Math.floor(p * 100)} %`
)} />
<label label={percent.as(p => `${p}%`)} />
</box>
);
}

View File

@ -1,5 +1,6 @@
import { bind } from "astal"
import Network from "gi://AstalNetwork"
import { execAsync } from "astal/process"
export default function Wifi() {
const network = Network.get_default()
@ -7,11 +8,19 @@ export default function Wifi() {
return <box visible={wifi.as(Boolean)}>
{wifi.as(wifi => wifi && (
<button
className="Wifi"
onClicked={() => {execAsync("ghostty --title=nmtui -e nmtui")}}>
<box>
<icon
tooltipText={bind(wifi, "ssid").as(String)}
className="Wifi"
icon={bind(wifi, "iconName")}
/>
<label
label={bind(wifi, "ssid").as(String)}
/>
</box>
</button>
))}
</box>
}

View File

@ -13,10 +13,12 @@
gparted
git-lfs
unrar
inputs.tlock.packages.${system}.default
hexyl
jq
litecli
trashy
dig
mtr
imagemagick
];
}

View File

@ -1,6 +1,6 @@
{ pkgs, lib, config, collection, swww_flags, inputs }: {
home.packages = with pkgs; [
kitty
ghostty
pamixer
wofi
clipse
@ -80,7 +80,10 @@
settings = {
"$mainMod" = "SUPER";
ecosystem.no_donation_nag = true;
ecosystem = {
no_donation_nag = true;
no_update_news = true;
};
env = [
"LIBVA_DRIVER_NAME,nvidia"
@ -94,7 +97,8 @@
"XDG_SESSION_DESKTOP,Hyprland"
"WLR_NO_HARDWARE_CURSORS,1"
"XCURSOR_SIZE,36"
"XCURSOR_SIZE, ${toString config.stylix.cursor.size}"
"XCURSOR_THEME, ${config.stylix.cursor.name}"
"XDG_SCREENSHOTS_DIR,~/screens"
];
@ -121,17 +125,15 @@
};
windowrule = [
"float, ^(imv)$"
"float, ^(feh)$"
"float, ^(mpv)$"
"float, ^(nmtui)$"
"float, class:^(imv)$"
"float, class:^(feh)$"
"float, class:^(mpv)$"
"float, title:^(Список друзей)"
"move onscreen cursor -50% -50%, ^(xdragon)$"
];
windowrulev2 = [
"float, class:(clipse)"
"size 622 652, class:(clipse)"
"move onscreen cursor -50% -50%, class:^(xdragon)$"
"float, title:(nmtui)"
"float, title:(pulsemixer)"
"float, title:(clipse)"
"size 622 652, title:(clipse)"
];
exec-once = [
@ -144,12 +146,12 @@
];
bind = [
"$mainMod, V, exec, kitty --class clipse -e clipse"
"$mainMod, V, exec, ghostty --title=clipse -e clipse"
"$mainMod, Return, exec, kitty"
"$mainMod, Return, exec, ghostty"
"$mainMod, Q, killactive,"
"$mainMod, M, exit,"
"$mainMod, E, exec, kitty -e sh -c yazi"
"$mainMod, E, exec, ghostty -e sh -c yazi"
"$mainMod, F, togglefloating,"
"$mainMod, D, exec, wofi --show drun"
"$mainMod, P, pseudo, # dwindle"
@ -204,8 +206,8 @@
"$mainMod, mouse_up, workspace, e-1"
# Keyboard backlight
"$mainMod, F3, exec, brightnessctl -d *::kbd_backlight set +33%"
"$mainMod, F2, exec, brightnessctl -d *::kbd_backlight set 33%-"
"$mainMod, F3, exec, ${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set +33%"
"$mainMod, F2, exec, ${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set 33%-"
# Volume and Media Control
", XF86AudioRaiseVolume, exec, pamixer -i 5 "
@ -214,8 +216,8 @@
", XF86AudioMicMute, exec, pamixer --default-source -m"
# Brightness control
", XF86MonBrightnessDown, exec, brightnessctl set 5%- "
", XF86MonBrightnessUp, exec, brightnessctl set +5% "
", XF86MonBrightnessDown, exec, ${lib.getExe pkgs.brightnessctl} set 5%- "
", XF86MonBrightnessUp, exec, ${lib.getExe pkgs.brightnessctl} set +5% "
# Waybar
"$mainMod, B, exec, pkill -SIGUSR1 waybar"

View File

@ -2,14 +2,14 @@
yazi-plugins = pkgs.fetchFromGitHub {
owner = "yazi-rs";
repo = "plugins";
rev = "07258518f3bffe28d87977bc3e8a88e4b825291b";
hash = "sha256-axoMrOl0pdlyRgckFi4DiS+yBKAIHDhVeZQJINh8+wk=";
rev = "273019910c1111a388dd20e057606016f4bd0d17";
hash = "sha256-80mR86UWgD11XuzpVNn56fmGRkvj0af2cFaZkU8M31I=";
};
starship = pkgs.fetchFromGitHub {
owner = "Rolv-Apneseth";
repo = "starship.yazi";
rev = "d1cd0a38aa6a2c2e86e62a466f43e415f781031e";
sha256 = "sha256-XiEsykudwYmwSNDO41b5layP1DqVa89e6Emv9Qf0mz0=";
rev = "6c639b474aabb17f5fecce18a4c97bf90b016512";
sha256 = "sha256-bhLUziCDnF4QDCyysRn7Az35RAy8ibZIVUzoPgyEO1A=";
};
in {
programs.yazi = {
@ -55,6 +55,11 @@ in {
on = [ "<C-n>" ];
run = ''shell '${lib.getExe pkgs.xdragon} -x -i -T "$@"' --confirm'';
}
{
on = [ "g" "<S-d>" ];
run = ''cd /mnt/D'';
desc = "Goto D drive";
}
];
};
};

View File

@ -80,6 +80,10 @@
source "$(fzf-share)/completion.zsh"
'';
envExtra = ''
TERM=xterm-256color
'';
history.size = 10000;
history.path = "${config.xdg.dataHome}/zsh/history";

View File

@ -21,12 +21,23 @@
dark = "Pop-Dark";
};
cursor = {
name = "catppuccin-mocha-peach-cursors";
size = 24;
package = pkgs.catppuccin-cursors.mochaPeach;
};
fonts = {
monospace = {
name = "JetBrains Mono";
package = pkgs.jetbrains-mono;
};
emoji = {
package = pkgs.noto-fonts-monochrome-emoji;
name = "Noto Emoji";
};
sizes = {
applications = 13;
desktop = 12;

View File

@ -1,4 +1,4 @@
{ pkgs, pkgs-stable, lib, inputs, name, fullname ? name, ... }: {
{ pkgs, pkgs-stable, pkgs-fixed, lib, inputs, name, fullname ? name, ... }: {
imports = [
inputs.home-manager.nixosModules.home-manager {
home-manager = {
@ -26,6 +26,7 @@
extraSpecialArgs = {
inherit inputs;
inherit pkgs-stable;
inherit pkgs-fixed;
};
};
}

View File

@ -25,8 +25,8 @@
gaps_in = 5;
gaps_out = 20;
border_size = 3;
"col.active_border" = "rgba(${colors.base0C}ee) rgba(${colors.base0B}ee) 45deg";
"col.inactive_border" = "rgba(${colors.base05}aa)";
"col.active_border" = lib.mkForce "rgba(${colors.base0C}ee) rgba(${colors.base0B}ee) 45deg";
"col.inactive_border" = lib.mkForce "rgba(${colors.base05}aa)";
layout = "dwindle";
};
@ -45,7 +45,6 @@
enabled = true;
range = 4;
render_power = 3;
color = "rgba(1a1a1aee)";
};
};

View File

@ -2,7 +2,7 @@
stylix = {
enable = true;
targets = {
hyprland.enable = false;
hyprland.enable = true;
waybar.enable = false;
kitty.variant256Colors = true;
};
@ -21,6 +21,12 @@
dark = "Pop-Dark";
};
cursor = {
name = "catppuccin-mocha-green-cursors";
size = 24;
package = pkgs.catppuccin-cursors.mochaGreen;
};
fonts = {
monospace = {
name = "JetBrains Mono";
@ -32,6 +38,11 @@
package = (pkgs.google-fonts.override { fonts = [ "Gabriela" ]; });
};
emoji = {
package = pkgs.noto-fonts-monochrome-emoji;
name = "Noto Emoji";
};
sizes = {
applications = 13;
desktop = 12;