1
0
Fork 0
mirror of https://git.sr.ht/~neverness/ultima synced 2024-12-27 18:43:52 +00:00
This commit is contained in:
neverness 2024-12-06 21:57:22 +09:00
parent 3fb0238d90
commit 581d4201df
24 changed files with 369 additions and 170 deletions

View file

@ -165,11 +165,11 @@
}, },
"locked": { "locked": {
"dir": "pkgs/firefox-addons", "dir": "pkgs/firefox-addons",
"lastModified": 1733390410, "lastModified": 1733457807,
"narHash": "sha256-bM3FIksaYkRloRh3y6GzuUrsJB7EizYtzeCgyftQ9rc=", "narHash": "sha256-o1x17M0MOTXnX26Q1vuKPOIrgHEdBgCXLNd0Jsnt6oc=",
"owner": "rycee", "owner": "rycee",
"repo": "nur-expressions", "repo": "nur-expressions",
"rev": "5f39164f253794b0101d596b7d4a7a0253f4b762", "rev": "a2c15a4676b2d3d3adc3a2dc8045b5af28dc5b65",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -554,11 +554,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1733369810, "lastModified": 1733427350,
"narHash": "sha256-veg37osP0Nmby/Bt7mdqD6k+Co3wO4jwnth0B2Z7vHU=", "narHash": "sha256-sasR3Jo4Rdo/3MJWCFzAgmhQ8s8VZ0c9+yxiW7GX8QY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "ceef4fb3a5efe1617790f56e2701846a21c2533d", "rev": "a7a6eedc2139564abc1fe09feee1ff32b53e1081",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -750,6 +750,38 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgsMaster": {
"locked": {
"lastModified": 1733469320,
"narHash": "sha256-/W06c3jeUgeoivwE9MTVAPbNUX1HazSYAZmZfUExFoQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "10f4a9ab7541ca6a76f8a98a7cd5fae70a425f7e",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "master",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgsStable": {
"locked": {
"lastModified": 1733469350,
"narHash": "sha256-GgHsM5jm8s/F8pD+S09BXXoBrHy20x0hUJU7SpkFQow=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "7314c6b5c5d5fbb83d07db52787a4510d15d222c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "release-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1732758367, "lastModified": 1732758367,
@ -828,11 +860,11 @@
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1733396819, "lastModified": 1733467284,
"narHash": "sha256-AEBmhobRo6PcvaZn9oEfjsQ/NElKBIBj8Va7sivSyzw=", "narHash": "sha256-pzSHveN18sSTTrjE5KU2si3h7XEOawOMLcasgGPjRK8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "e6098b0360b6436634f3604c134e99b608a8c252", "rev": "8e6e9b8e2d04f0eea11dfa701f790bee797295b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -915,6 +947,8 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland", "hyprland": "hyprland",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_3",
"nixpkgsMaster": "nixpkgsMaster",
"nixpkgsStable": "nixpkgsStable",
"nur": "nur", "nur": "nur",
"parts": "parts", "parts": "parts",
"phani": "phani", "phani": "phani",
@ -952,11 +986,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1733372233, "lastModified": 1733458623,
"narHash": "sha256-nEpd7QFcjHXop4Km9ldh1fXq0K10/u7kPlchPXl44/g=", "narHash": "sha256-52PZbQysGpULrOehi4+807Qj3jSa3fXGJw0wuRxQfvo=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "spicetify-nix", "repo": "spicetify-nix",
"rev": "8a832957847b643f758263293ccca6e801614a1c", "rev": "ebe9e466f8eb5b1ae3079d9c44cb4d8a56f8e5c2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -982,11 +1016,11 @@
"tinted-tmux": "tinted-tmux" "tinted-tmux": "tinted-tmux"
}, },
"locked": { "locked": {
"lastModified": 1733262405, "lastModified": 1733427445,
"narHash": "sha256-/AT315It87ll6mlZLYcmfoe6Uogx9MjPBCCZZZTq8xY=", "narHash": "sha256-E854RAbAX+DZHDo4HIk2nkqpIvvoAm+P7oDx7TmhWk8=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "ffba1f1bab63ea49541f812c72a4fcf305461d67", "rev": "eb918dbffa24c4dae497f3ce3173660f948d5237",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1147,11 +1181,11 @@
}, },
"locked": { "locked": {
"dir": "packaging/nix", "dir": "packaging/nix",
"lastModified": 1733037609, "lastModified": 1733450594,
"narHash": "sha256-HkS24indfMaQbVZ+9GY5BHc+rqPvh8htF0rWYhvgPKI=", "narHash": "sha256-UlWmVUocOgkT/OpqXwcfFFRQSH28jncpWRqFNGVuh6I=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "e559e2e50999093c3e837d33886f9e14e34ead0a", "rev": "1c3dd941402a782dc9d3582ba6aaac00f5e498e0",
"revCount": 863, "revCount": 864,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix" "url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix"

View file

@ -1,6 +1,8 @@
{ {
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # UNSTABLE nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # UNSTABLE
nixpkgsStable.url = "github:nixos/nixpkgs/release-24.11"; # 24.11
nixpkgsMaster.url = "github:nixos/nixpkgs/master"; # MASTER
nur.url = "github:nix-community/NUR"; # NUR nur.url = "github:nix-community/NUR"; # NUR
hardware.url = "github:NixOS/nixos-hardware/master"; # HARDWARE hardware.url = "github:NixOS/nixos-hardware/master"; # HARDWARE

View file

@ -10,7 +10,7 @@
fzf = True; fzf = True;
git = True; git = True;
helix = True; helix = True;
joshuto = True; joshuto = False;
legendary = True; legendary = True;
micro = False; micro = False;
rmpc = False; rmpc = False;
@ -19,7 +19,8 @@
zoxide = True; zoxide = True;
}; };
gui = { # GUI PROGRAMS gui = { # GUI PROGRAMS
floorp = True; floorp = False;
minecraft = True // { cli = True; };
mpv = True; mpv = True;
obs = True; obs = True;
qbittorrent = True; qbittorrent = True;
@ -30,13 +31,13 @@
custom = { custom = {
anicli = True; anicli = True;
mabel = False; mabel = False;
rustmission = True; rustmission = False;
torque = True; torque = False;
}; };
}; };
shells = { # SHELLS shells = { # SHELLS
fish = True; fish = True;
nushell = True; nushell = False;
tmux = False; tmux = False;
zsh = False; zsh = False;
starship = True; starship = True;
@ -47,10 +48,10 @@
stylix = True // { stylix = True // {
theme = "paradise"; theme = "paradise";
image = "train"; image = "train";
cursor = with config.lib.stylix.colors; { cursor = with config.lib.stylix.colors.withHashtag; {
bg = "#${base0E}"; bg = "${base0E}";
ol = "#${base00}"; ol = "${base00}";
ac = "#${base0E}"; ac = "${base0E}";
}; };
}; };
}; };
@ -71,7 +72,7 @@
}; };
misc = { # MISC MODULES misc = { # MISC MODULES
dconf = True; dconf = True;
xdg = True; xdg.mime = True;
}; };
}; };
} }

View file

@ -2,7 +2,6 @@
imports = with inputs; [ nur.hmModules.nur ]; imports = with inputs; [ nur.hmModules.nur ];
module.programs = { module.programs = {
gui.pkgs = with pkgs; [ gui.pkgs = with pkgs; [
foot
nemo # GUI FM nemo # GUI FM
nemo-fileroller # ADDON nemo-fileroller # ADDON
file-roller # ARCHIVER file-roller # ARCHIVER
@ -17,12 +16,6 @@
bottles # LAUNCH GAMES WITHOUT STEAM bottles # LAUNCH GAMES WITHOUT STEAM
mindustry-wayland # MINDUSTRY LETSSS GOOOOO mindustry-wayland # MINDUSTRY LETSSS GOOOOO
(prismlauncher.override {
gamemodeSupport = true;
controllerSupport = true;
textToSpeechSupport = false;
jdks = [ temurin-jre-bin-21 temurin-jre-bin-17 temurin-jre-bin-8 ];
}) # MINECRAFT IS MY LIFE
inputs.zen.packages."${system}".specific # COOL BROWSER inputs.zen.packages."${system}".specific # COOL BROWSER
]; ];

View file

@ -2,6 +2,7 @@
imports = [ ./parts ../../modules/nixos ]; imports = [ ./parts ../../modules/nixos ];
module = { module = {
themes.stylix = True // { theme = "paradise"; }; themes.stylix = True // { theme = "paradise"; };
base = True;
# HARDWARE MODULES # HARDWARE MODULES
hardware = { hardware = {
amd = True // { amdvlk = False; }; amd = True // { amdvlk = False; };
@ -9,7 +10,6 @@
boot = True // { plymouth = True; }; boot = True // { plymouth = True; };
network = True; network = True;
security = True; security = True;
sound = True;
}; };
# SERVICES MODULES # SERVICES MODULES
services = { services = {
@ -20,9 +20,10 @@
gvfs = True; gvfs = True;
polkit = True; polkit = True;
printing = False; printing = False;
tailscale = True; tailscale = False;
tlp = False; tlp = False;
transmission = True; transmission = False;
zapret = True;
zram = True // { algo = "zstd"; }; zram = True // { algo = "zstd"; };
}; };
# PROGRAMS MODULES # PROGRAMS MODULES
@ -31,7 +32,7 @@
hyprland = True; hyprland = True;
sway = False; sway = False;
steam = True; steam = True;
hamachi = True; hamachi = False // { gui = False; };
torrserver = True; torrserver = True;
}; };
misc = { misc = {
@ -44,7 +45,6 @@
terraria = False; terraria = False;
users = True // { shell = "fish"; }; users = True // { shell = "fish"; };
variables = True; variables = True;
nix = True;
}; };
}; };

View file

@ -2,14 +2,12 @@
with lib; with lib;
let let hmdir = config.home.homeDirectory;
cfg = config.module.misc.xdg;
hmdir = config.home.homeDirectory;
in { in {
options = { module.misc.xdg = { enable = mkEnableOption ""; }; }; options = { module.misc.xdg = { mime.enable = mkEnableOption ""; }; };
imports = [ ./mimeApps.nix ]; imports = [ ./mimeApps.nix ];
config = mkIf cfg.enable { config = {
xdg = { xdg = {
mime = True; mime = True;
portal = True // { portal = True // {

View file

@ -1,5 +1,14 @@
{ {
imports = imports = [
[ ./floorp ./mpv ./obs ./qbittorrent ./spotify ./swayimg ./zed ./pkgs.nix ]; ./floorp
./minecraft
./mpv
./obs
./qbittorrent
./spotify
./swayimg
./zed
./pkgs.nix
];
} }

View file

@ -0,0 +1,33 @@
{ pkgs, lib, config, ... }:
with lib;
let
cfg = config.module.programs.gui.minecraft;
jre = with pkgs; [ temurin-jre-bin-21 temurin-jre-bin-17 temurin-jre-bin-8 ];
in {
options = {
module.programs.gui.minecraft = {
enable = mkEnableOption "";
cli.enable = mkEnableOption "";
};
};
config = mkMerge [
(mkIf cfg.enable { # BEST MINECRAFT LACUNHER
home.packages = with pkgs;
[
(prismlauncher.override {
gamemodeSupport = true;
controllerSupport = true;
textToSpeechSupport = false;
jdks = jre;
})
];
})
(mkIf cfg.cli.enable { # CLI LAUNCER
home.packages = with pkgs; [ portablemc ferium ];
})
];
}

View file

@ -0,0 +1,53 @@
{ lib, stdenv, python3Packages, fetchFromGitHub, fetchurl, installShellFiles
, libX11, libXext, libXcursor, libXrandr, libXxf86vm, libpulseaudio, libGL, glfw
, openal, udev, flite, java ? [ ] }:
let
runtimeLibs = [
libX11
libXext
libXcursor
libXrandr
libXxf86vm
libpulseaudio
libGL
glfw
openal
(lib.getLib stdenv.cc.cc)
udev
] ++ lib.optional flite;
patch = fetchurl {
url =
"https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/nixos-unstable/pkgs/by-name/po/portablemc/use-builtin-java.patch";
hash = "";
};
in python3Packages.buildPythonApplication rec {
pname = "portablemc";
version = "4.4.0";
pyproject = true;
disabled = python3Packages.pythonOlder "3.8";
src = fetchFromGitHub {
owner = "mindstorm38";
repo = "portablemc";
rev = "refs/tags/v${version}";
hash = "sha256-JDosvjbpoDC+xJ15ejcMJd+jA09RLR+whVZblMu+ljk=";
};
patches = [ patch ];
nativeBuildInputs = [ installShellFiles ];
build-system = [ python3Packages.poetry-core ];
dependencies = [ python3Packages.certifi ];
postInstall = ''
installShellCompletion --cmd portablemc \
--bash <($out/bin/portablemc show completion bash) \
--zsh <($out/bin/portablemc show completion zsh)
'';
preFixup = ''
makeWrapperArgs+=(
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath runtimeLibs}
--prefix PATH : ${lib.makeBinPath [ java ]}
)
'';
meta = {
mainProgram = "portablemc";
maintainers = with lib.maintainers; [ tomasajt uwugda ];
};
}

View file

@ -0,0 +1,48 @@
{
programs.mpv.bindings = {
WHEEL_UP = "add volume 2";
WHEEL_DOWN = "add volume -2";
"Shift+WHEEL_UP" = "add volume 5";
"Shift+WHEEL_DOWN" = "add volume -5";
RIGHT = "seek 5";
l = "seek 5";
"д" = "seek 5";
LEFT = "seek -5";
h = "seek -5";
"р" = "seek -5";
UP = "add volume 2";
k = "add volume 2";
"л" = "add volume 2";
DOWN = "add volume -2";
j = "add volume -2";
"о" = "add volume -2";
"Shift+RIGHT" = "seek 10";
"Shift+LEFT" = "seek -10";
"Shift+UP" = "add volume 5";
"Shift+DOWN" = "add volume -5";
q = "quit";
"й" = "quit";
Q = "quit-watch-later";
SPACE = "cycle pause";
p = "cycle pause";
"з" = "cycle pause";
m = "cycle mute";
"ь" = "cycle mute";
o = "show-progress";
"щ" = "show-progress";
f = "cycle fullscreen";
"а" = "cycle fullscreen";
ESC = "set fullscreen no";
};
}

View file

@ -6,6 +6,7 @@ let cfg = config.module.programs.gui.mpv;
in { in {
options = { module.programs.gui.mpv = { enable = mkEnableOption ""; }; }; options = { module.programs.gui.mpv = { enable = mkEnableOption ""; }; };
imports = [ ./bindings.nix ./osc.nix ];
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.mpv = True // { programs.mpv = True // {
scripts = with pkgs.mpvScripts; [ thumbnail sponsorblock-minimal ]; scripts = with pkgs.mpvScripts; [ thumbnail sponsorblock-minimal ];
@ -30,62 +31,16 @@ in {
config = { config = {
fs = "yes"; fs = "yes";
osc = "no"; osc = "no";
glsl-shaders = glsl-shaders = with pkgs;
"${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_VL.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Restore_CNN_VL.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl";
}; };
bindings = { extraInput = with pkgs; ''
WHEEL_UP = "add volume 2"; CTRL+1 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Restore_CNN_VL.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A (HQ)"
WHEEL_DOWN = "add volume -2"; CTRL+2 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Restore_CNN_Soft_VL.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B (HQ)"
"Shift+WHEEL_UP" = "add volume 5"; CTRL+3 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C (HQ)"
"Shift+WHEEL_DOWN" = "add volume -5"; CTRL+4 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Restore_CNN_VL.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${anime4k}/Anime4K_Restore_CNN_M.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A+A (HQ)"
CTRL+5 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Restore_CNN_Soft_VL.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Restore_CNN_Soft_M.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B+B (HQ)"
RIGHT = "seek 5"; CTRL+6 no-osd change-list glsl-shaders set "${anime4k}/Anime4K_Clamp_Highlights.glsl:${anime4k}/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:${anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${anime4k}/Anime4K_Restore_CNN_M.glsl:${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C+A (HQ)"
l = "seek 5";
"д" = "seek 5";
LEFT = "seek -5";
h = "seek -5";
"р" = "seek -5";
UP = "add volume 2";
k = "add volume 2";
"л" = "add volume 2";
DOWN = "add volume -2";
j = "add volume -2";
"о" = "add volume -2";
"Shift+RIGHT" = "seek 10";
"Shift+LEFT" = "seek -10";
"Shift+UP" = "add volume 5";
"Shift+DOWN" = "add volume -5";
q = "quit";
"й" = "quit";
Q = "quit-watch-later";
SPACE = "cycle pause";
p = "cycle pause";
"з" = "cycle pause";
m = "cycle mute";
"ь" = "cycle mute";
o = "show-progress";
"щ" = "show-progress";
f = "cycle fullscreen";
"а" = "cycle fullscreen";
ESC = "set fullscreen no";
};
extraInput = ''
CTRL+1 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_VL.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A (HQ)"
CTRL+2 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_Soft_VL.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B (HQ)"
CTRL+3 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C (HQ)"
CTRL+4 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_VL.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_M.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A+A (HQ)"
CTRL+5 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_Soft_VL.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_Soft_M.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B+B (HQ)"
CTRL+6 no-osd change-list glsl-shaders set "${pkgs.anime4k}/Anime4K_Clamp_Highlights.glsl:${pkgs.anime4k}/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x2.glsl:${pkgs.anime4k}/Anime4K_AutoDownscalePre_x4.glsl:${pkgs.anime4k}/Anime4K_Restore_CNN_M.glsl:${pkgs.anime4k}/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C+A (HQ)"
CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared" CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"
''; '';

View file

@ -0,0 +1,19 @@
{ config, ... }:
with config.lib.stylix.colors.withHashtag; {
xdg.configFile."mpv/script-opts/osc.conf".text = ''
layout=bottombar
seekbarstyle=bar
boxalpha=0
fadeduration=120
background_color=${base00}
timecode_color=${base04}
title_color=${base06}
time_pos_color=${base06}
time_pos_outline_color=${base06}
buttons_color=${base06}
top_buttons_color=${base06}
small_buttonsL_color=${base06}
small_buttonsR_color=${base06}
held_element_color=${base06}
'';
}

View file

@ -61,6 +61,7 @@ in {
in { in {
serif = font; serif = font;
monospace = font; monospace = font;
emoji = font;
sizes = { sizes = {
desktop = 10; desktop = 10;
popups = 10; popups = 10;

View file

@ -0,0 +1,30 @@
{ pkgs, lib, config, hostName, userName, True, False, ... }:
with lib;
let cfg = config.module.base;
in {
options = { module.base = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable {
module.hardware.sound = True; # PIPEWIRE
services.getty.autologinUser = userName; # AUTOLOGIN
boot = { # BOOT
kernelPackages = with pkgs; linuxPackages_zen;
initrd.systemd = True;
loader = {
systemd-boot = True // { configurationLimit = 4; };
timeout = 0;
};
};
networking = { # NETWORKING
hostName = hostName;
useDHCP = mkDefault true;
};
security = { # SUDO RS
sudo = False;
sudo-rs = True;
};
};
}

View file

@ -1 +1 @@
{ imports = [ ./hardware ./misc ./programs ./services ./theme ]; } { imports = [ ./base ./hardware ./misc ./programs ./services ./theme ]; }

View file

@ -16,7 +16,6 @@ in {
(mkIf cfg.enable { (mkIf cfg.enable {
boot = { # ITSELF LOL boot = { # ITSELF LOL
tmp.cleanOnBoot = true; tmp.cleanOnBoot = true;
kernelPackages = pkgs.linuxPackages_zen;
kernelModules = [ "kvm-amd" ]; kernelModules = [ "kvm-amd" ];
consoleLogLevel = 0; consoleLogLevel = 0;
kernelParams = [ kernelParams = [
@ -34,13 +33,8 @@ in {
"rd.systemd.show_status=false" "rd.systemd.show_status=false"
"psmouse.synaptics_intertouch=0" "psmouse.synaptics_intertouch=0"
]; ];
loader = { # SYSTEMD BOOT AS DEFAULT loader.efi.canTouchEfiVariables = true;
systemd-boot = True // { configurationLimit = 4; };
efi.canTouchEfiVariables = true;
timeout = 0; # TIMEOUT FOR LAUNCH
};
initrd = { # IDK initrd = { # IDK
systemd = True;
compressor = "zstd"; compressor = "zstd";
compressorArgs = [ "-9" ]; compressorArgs = [ "-9" ];
verbose = false; verbose = false;

View file

@ -1,4 +1,4 @@
{ pkgs, lib, config, hostName, True, False, ... }: { pkgs, lib, config, True, False, ... }:
with lib; with lib;
@ -13,7 +13,6 @@ in {
pptp pptp
]; ];
networking = { # FOR NETWORK networking = { # FOR NETWORK
hostName = hostName;
nameservers = [ "::1" "127.0.0.1" "1.1.1.1" "1.0.0.1" ]; nameservers = [ "::1" "127.0.0.1" "1.1.1.1" "1.0.0.1" ];
resolvconf.dnsSingleRequest = true; resolvconf.dnsSingleRequest = true;
networkmanager = True // { networkmanager = True // {
@ -24,8 +23,6 @@ in {
backend = "iwd"; backend = "iwd";
}; };
}; };
useDHCP = mkDefault true;
nftables = True;
}; };
services = { services = {
resolved = True; resolved = True;

View file

@ -7,9 +7,7 @@ in {
options = { module.hardware.security = { enable = mkEnableOption ""; }; }; options = { module.hardware.security = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
security = { security.sudo-rs = {
sudo = False;
sudo-rs = True // { # TOP
execWheelOnly = true; execWheelOnly = true;
wheelNeedsPassword = true; wheelNeedsPassword = true;
extraRules = [{ extraRules = [{
@ -27,6 +25,5 @@ in {
}]; }];
}; };
}; };
};
} }

View file

@ -1,24 +1,16 @@
{ pkgs, lib, config, userName, ... }: { pkgs, lib, userName, ... }: {
with lib;
let cfg = config.module.misc.nix;
in {
options = { module.misc.nix = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable {
nix = { nix = {
package = pkgs.nix; package = pkgs.nix;
settings = { settings = {
warn-dirty = false; warn-dirty = false;
experimental-features = [ "nix-command" "flakes" ]; experimental-features = [ "nix-command" "flakes" ];
trusted-users = [ "${userName}" "@wheel" ];
substituters = [ substituters = [
"https://hyprland.cachix.org" # HYPRLAND "https://hyprland.cachix.org" # HYPRLAND
]; ];
trusted-public-keys = [ trusted-public-keys = [
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" # HYPRLAND "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" # HYPRLAND
]; ];
trusted-users = [ "${userName}" "@wheel" ];
}; };
}; };
@ -29,6 +21,5 @@ in {
allowUnfree = true; allowUnfree = true;
}; };
}; };
};
} }

View file

@ -26,7 +26,7 @@ in {
programs = { programs = {
nano = False; nano = False;
light = True; light = True;
git = True // { package = pkgs.gitMinimal; }; git = True // { package = mkDefault pkgs.gitMinimal; };
nh = True // { flake = flakeDir; }; nh = True // { flake = flakeDir; };
}; };
}) })
@ -40,7 +40,8 @@ in {
(mkIf cfg.sway.enable { (mkIf cfg.sway.enable {
programs.sway = True // { package = pkgs.swayfx; }; programs.sway = True // { package = pkgs.swayfx; };
}) })
(mkIf cfg.hamachi.enable { programs.haguichi = True; }) (mkIf cfg.hamachi.enable { services.logmein-hamachi = True; })
(mkIf cfg.hamachi.gui.enable { programs.haguichi = True; })
(mkIf cfg.steam.enable { (mkIf cfg.steam.enable {
environment.systemPackages = with pkgs; [ protonup-qt ]; environment.systemPackages = with pkgs; [ protonup-qt ];
hardware.xone = True; hardware.xone = True;

View file

@ -10,6 +10,7 @@
./tailscale ./tailscale
./tlp ./tlp
./transmission ./transmission
./zapret
./zram ./zram
]; ];
} }

View file

@ -7,10 +7,7 @@ in {
options = { module.services.getty = { enable = mkEnableOption ""; }; }; options = { module.services.getty = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.getty = { services.getty.greetingLine = "Good day my lord ahhhh ${userName}";
autologinUser = userName;
greetingLine = "Good day my lord ahhhh ${userName}";
};
}; };
} }

View file

@ -0,0 +1,45 @@
{ lib, config, True, ... }:
with lib;
let cfg = config.module.services.zapret;
in {
options = { module.services.zapret = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable {
services.zapret = True // {
params =
[ "--dpi-desync=fake" "--dpi-desync-ttl=8" "-dpi-desync-repeats=15" ];
httpMode = "full";
udpSupport = true;
udpPorts = [ "50000:50099" ];
whitelist = [
"animego.org"
"github.io"
"proton.me"
"youtube.com"
"googlevideo.com"
"ytimg.com"
"youtu.be"
"rutracker.org"
"rutracker.cc"
"rutrk.org"
"t-ru.org"
"medium.com"
"dis.gd"
"discord.co"
"discord.com"
"discord.dev"
"discord.gg"
"discord.gift"
"discord.media"
"discord.new"
"discordapp.com"
"discordapp.net"
"discordcdn.com"
"discordstatus.com"
];
};
};
}