honestly just wayyy too muchz

liek media and stuff
and fixing shit
and iinstalling adblock on browser by default

cool shiz
This commit is contained in:
martyTF 2025-12-22 08:15:54 +01:00
parent a4dfaabe09
commit bf430f5b71
20 changed files with 436 additions and 186 deletions

179
flake.lock generated
View file

@ -6,11 +6,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1765715259, "lastModified": 1766069388,
"narHash": "sha256-fqj1c3RVPrwOdJgg5AiH69LBiFozHsCu3mOnxUevG6g=", "narHash": "sha256-PSFrMcVBKV+TiEgLyt2EPxOTlzmIPers+HFgh+cxkJs=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "elephant", "repo": "elephant",
"rev": "3cd81164d20b266288d3febcd0390b2e21f30c48", "rev": "8fa6fc252ebfa92c4175dd41827df9ab5c196003",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -35,6 +35,22 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1747046372,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": { "flake-parts": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
@ -53,24 +69,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -78,11 +76,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765682243, "lastModified": 1766282146,
"narHash": "sha256-yeCxFV/905Wr91yKt5zrVvK6O2CVXWRMSrxqlAZnLp0=", "narHash": "sha256-0V/nKU93KdYGi+5LB/MVo355obBJw/2z9b2xS3bPJxY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "58bf3ecb2d0bba7bdf363fc8a6c4d49b4d509d03", "rev": "61fcc9de76b88e55578eb5d79fc80f2b236df707",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -91,40 +89,19 @@
"type": "github" "type": "github"
} }
}, },
"nix-options-doc": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs_2",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1742115705,
"narHash": "sha256-RfXwJPWBoWswIU68+y/XZfTWtFHd/fK14bKvOlRmfPo=",
"owner": "Thunderbottom",
"repo": "nix-options-doc",
"rev": "2caa4b5756a8666d65d70122f413e295f56886e7",
"type": "github"
},
"original": {
"owner": "Thunderbottom",
"ref": "v0.2.0",
"repo": "nix-options-doc",
"type": "github"
}
},
"nixos-cli": { "nixos-cli": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"nix-options-doc": "nix-options-doc", "nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs_3" "optnix": "optnix"
}, },
"locked": { "locked": {
"lastModified": 1765423663, "lastModified": 1766287443,
"narHash": "sha256-ToKVLDYAzKyStJgCA7W+RZObvwABK9fQ8i1wLUUOdLM=", "narHash": "sha256-voUed/NmqwJuCjZDgRp9H8LLECyrEB2QAXhM/slePwU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-cli", "repo": "nixos-cli",
"rev": "a2019789319c1678be8dc68ecf34c83f948e7475", "rev": "5a856cb469b7565e79cf12c1607fce29b6d5d371",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -165,22 +142,6 @@
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": {
"lastModified": 1740695751,
"narHash": "sha256-D+R+kFxy1KsheiIzkkx/6L63wEHBYX21OIwlFV8JvDs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "6313551cd05425cd5b3e63fe47dbc324eabb15e4",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1764527385, "lastModified": 1764527385,
"narHash": "sha256-nA5ywiGKl76atrbdZ5Aucd8SjF/v8ew9b9QsC+MKL14=", "narHash": "sha256-nA5ywiGKl76atrbdZ5Aucd8SjF/v8ew9b9QsC+MKL14=",
@ -196,13 +157,29 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_3": {
"locked": {
"lastModified": 1759070547,
"narHash": "sha256-JVZl8NaVRYb0+381nl7LvPE+A774/dRpif01FKLrYFQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "647e5c14cbd5067f44ac86b74f014962df460840",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1765472234, "lastModified": 1766070988,
"narHash": "sha256-9VvC20PJPsleGMewwcWYKGzDIyjckEz8uWmT0vCDYK0=", "narHash": "sha256-G/WVghka6c4bAzMhTwT2vjLccg/awmHkdKSd2JrycLc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2fbfb1d73d239d2402a8fe03963e37aab15abe8b", "rev": "c6245e83d836d0433170a16eb185cefe0572f8b8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -228,6 +205,25 @@
"type": "github" "type": "github"
} }
}, },
"optnix": {
"inputs": {
"flake-compat": "flake-compat_2",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1765418479,
"narHash": "sha256-33VCCXiEnEL9N2wVxo9FHLwL8KWH6qk+MNRcSThOPWs=",
"owner": "water-sucks",
"repo": "optnix",
"rev": "01facc3de860bf479723bf19535586564e59fe73",
"type": "github"
},
"original": {
"owner": "water-sucks",
"repo": "optnix",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"elephant": "elephant", "elephant": "elephant",
@ -238,28 +234,6 @@
"zen-browser": "zen-browser" "zen-browser": "zen-browser"
} }
}, },
"rust-overlay": {
"inputs": {
"nixpkgs": [
"nixos-cli",
"nix-options-doc",
"nixpkgs"
]
},
"locked": {
"lastModified": 1740796337,
"narHash": "sha256-FuoXrXZPoJEZQ3PF7t85tEpfBVID9JQIOnVKMNfTAb0=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "bbac9527bc6b28b6330b13043d0e76eac11720dc",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1689347949,
@ -276,21 +250,6 @@
} }
}, },
"systems_2": { "systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@ -311,14 +270,14 @@
"elephant" "elephant"
], ],
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_5",
"systems": "systems_3" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1765305269, "lastModified": 1766324177,
"narHash": "sha256-2OQsyZaO2Uy6EnDLcDZGBbDEa0X1WuZ4NoZ5kW52OeA=", "narHash": "sha256-7Y8Pqn12ovZ2nH1y+rxMbliUPhY4cu/iB0cwSNHTMZY=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "walker", "repo": "walker",
"rev": "132004947c5c877f510177d8c68f754e37169ecc", "rev": "fb6152710c450a4b81342db42857de4aea049716",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -31,4 +31,5 @@
programs = { programs = {
light.enable = true; light.enable = true;
}; };
services.flatpak.enable = true;
} }

View file

@ -76,21 +76,15 @@
# #
# /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh # /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh
# #
home.sessionVariables = {
EDITOR = "codium";
GTK_THEME = "Adwaita:dark";
TERM = "xterm-kitty";
};
device.type.laptop = true; device.type.laptop = true;
desktop.hyprland = { desktop.hyprland = {
monitors = [ monitors = [
"desc:InfoVision Optoelectronics (Kunshan) Co.Ltd China 0x057E, 1366x768@60,0x0,1" "desc:InfoVision Optoelectronics (Kunshan) Co.Ltd China 0x057E, 1366x768@60,0x0,1"
]; ];
}; };
imports = [ imports = [
inputs.walker.homeManagerModules.default inputs.walker.homeManagerModules.default
./../../modules ./../../modules

View file

@ -29,6 +29,15 @@
marty = import ./home.nix; marty = import ./home.nix;
}; };
}; };
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
gamescopeSession.enable = true;
protontricks.enable = true;
};
services.flatpak.enable = true;
imports = [ ./hardware.nix ]; imports = [ ./hardware.nix ];
security.polkit = { security.polkit = {

View file

@ -36,6 +36,16 @@
"dmask=0077" "dmask=0077"
]; ];
}; };
fileSystems = {
"/mnt/SSD" = {
device = "/dev/disk/by-uuid/af5282f0-0e02-4532-902f-97509af70d11";
fsType = "ext4";
};
"/mnt/HDD" = {
device = "/dev/disk/by-uuid/41e7ec41-2e43-4254-9f00-f4be98cddc6e";
fsType = "ext4";
};
};
swapDevices = [ swapDevices = [
{ device = "/dev/disk/by-uuid/24ecde92-b41b-4e41-8ebc-950d321db477"; } { device = "/dev/disk/by-uuid/24ecde92-b41b-4e41-8ebc-950d321db477"; }

View file

@ -76,37 +76,21 @@
# #
# /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh # /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh
# #
home.sessionVariables = {
EDITOR = "codium"; device.type.desktop = true;
desktop = {
hyprland = {
enable = true;
numlock = true;
monitors = [
"desc:AOC Q27G2WG4 0x00005F45, 2560x1440@144, 3840x0, 1 # main monitor"
"desc:Samsung Electric Company S24D330 0x5A5A5131, 1920x1080@60, 3840x1440, 1 # side monitor"
"desc:Panasonic Industry Company Panasonic-TV, 3840x2160@30, 0x0, 1 # tv"
];
};
}; };
gaming.steam.enable = true;
# device = {
# type = "desktop";
# };
# development = {
# vscodium.enable = true;
# git.enable = true;
# };
# terminal = {
# kitty.enable = true;
# };
# desktop = {
# hyprland = {
# enable = false;
# numlock = true;
# monitors = [
# "monitor = desc:AOC Q27G2WG4 0x00005F45, 2560x1440@144, 3840x0, 1 # main monitor"
# "monitor = desc:Samsung Electric Company S24D330 0x5A5A5131, 1920x1080@60, 3840x1440, 1 # side monitor"
# "monitor = desc:Panasonic Industry Company Panasonic-TV, 3840x2160@30, 0x0, 1 # tv"
# ];
# };
# rofi.enable = true;
# walker.enable = true;
# wallpaper.enable = true;
# };
# misc = {
# bitwarden.enable = true;
# };
imports = [ imports = [
inputs.walker.homeManagerModules.default inputs.walker.homeManagerModules.default

View file

@ -76,9 +76,6 @@
# #
# /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh # /etc/profiles/per-user/marty/etc/profile.d/hm-session-vars.sh
# #
home.sessionVariables = {
EDITOR = "codium";
};
development = { development = {
vscodium.enable = false; vscodium.enable = false;

View file

@ -14,5 +14,6 @@
./misc ./misc
./gaming ./gaming
./internet ./internet
./media
]; ];
} }

View file

@ -24,5 +24,17 @@
wallpaper.enable = true; wallpaper.enable = true;
grimblast.enable = true; grimblast.enable = true;
}; };
internet = lib.mkDefault {
browsers = {
zen-browser = {
enable = true;
};
};
};
media = {
images.enable = true;
video.enable = true;
audio.enable = true;
};
}; };
} }

View file

@ -33,5 +33,9 @@
}; };
}; };
}; };
media = {
images.nomacs.enable = true;
video.mpv.enable = true;
};
}; };
} }

View file

@ -16,24 +16,27 @@
]; ];
description = ''declare monitors''; description = ''declare monitors'';
}; };
workspaces = { workspaces = {
workspaces = lib.mkOption { workspaces = lib.mkOption {
default = ( default = (
builtins.concatLists (builtins.genList (i: builtins.concatLists (
let ws = i + 1; builtins.genList (
in [ i:
"name:${toString i},,persistent:true" let
] ws = i + 1;
in
[
"name:${toString i},,persistent:true"
]
) config.desktop.hyprland.workspaces.amount
) )
config.desktop.hyprland.workspaces.amount) );
)
;
description = ''declare workspace''; description = ''declare workspace'';
}; };
amount = lib.mkOption { amount = lib.mkOption {
default = 9; default = 9;
description = ''declare workspace amount''; description = ''declare workspace amount'';
}; };
}; };
numlock = lib.mkEnableOption "numlock by default"; numlock = lib.mkEnableOption "numlock by default";
}; };
@ -70,12 +73,17 @@
(lib.mkIf (config.desktop.rofi.enable) "$mod, D, exec, rofi -show drun") (lib.mkIf (config.desktop.rofi.enable) "$mod, D, exec, rofi -show drun")
(lib.mkIf (config.terminal.kitty.enable) "$mod, return, exec, kitty") (lib.mkIf (config.terminal.kitty.enable) "$mod, return, exec, kitty")
(lib.mkIf (config.desktop.grimblast.enable) ", print, exec, GRIMBLAST_EDITOR=gradia grimblast edit area") (lib.mkIf (config.desktop.grimblast.enable) ", print, exec, GRIMBLAST_EDITOR=gradia grimblast edit area")
(lib.mkIf (config.desktop.rofi.enable) (lib.mkIf (config.misc.bitwarden.enable) "$mod, B, exec, rbw unlocked || kitty --class kitty-floating -e rbw unlock; rofi-rbw")) (lib.mkIf (config.desktop.rofi.enable) (
(lib.mkIf (config.desktop.walker.enable) ( lib.mkIf (config.misc.bitwarden.enable) "$mod, B, exec, rbw unlocked || kitty --class kitty-floating -e rbw unlock; selected=$(rbw list | walker -d); wl-copy $(rbw get $selected)")) lib.mkIf (config.misc.bitwarden.enable) "$mod, B, exec, rbw unlocked || kitty --class kitty-floating -e rbw unlock; rofi-rbw"
))
(lib.mkIf (config.desktop.walker.enable) (
lib.mkIf (config.misc.bitwarden.enable) "$mod, B, exec, rbw unlocked || kitty --class kitty-floating -e rbw unlock; selected=$(rbw list | walker -d); wl-copy $(rbw get \"$selected\")"
))
"$mod, F, fullscreen, 1" "$mod, F, fullscreen, 1"
"$shiftmod, F, fullscreen, 0" "$shiftmod, F, fullscreen, 0"
"$shiftmod, Q, killactive," "$shiftmod, Q, killactive,"
"$mod, S, togglespecialworkspace, magic" "$mod, S, togglespecialworkspace, magic"
"$mod, O, exec, zen"
"$shiftmod, S, movetoworkspace, special:magic" "$shiftmod, S, movetoworkspace, special:magic"
"$controlmod, right, workspace, m-1" "$controlmod, right, workspace, m-1"
"$controlmod, left, workspace, m+1" "$controlmod, left, workspace, m+1"
@ -95,17 +103,18 @@
"$controlmod, down, exec, light -U 10" "$controlmod, down, exec, light -U 10"
"$controlmod, Q, exec, hyprctl kill" "$controlmod, Q, exec, hyprctl kill"
] ]
++ ( ++ (builtins.concatLists (
builtins.concatLists (builtins.genList (i: builtins.genList (
let ws = i + 1; i:
in [ let
"$mod, code:1${toString i}, workspace, ${toString ws}" ws = i + 1;
"$shiftmod, code:1${toString i}, movetoworkspacesilent, ${toString ws}" in
] [
) "$mod, code:1${toString i}, workspace, ${toString ws}"
config.desktop.hyprland.workspaces.amount) "$shiftmod, code:1${toString i}, movetoworkspacesilent, ${toString ws}"
) ]
; ) config.desktop.hyprland.workspaces.amount
));
bindm = [ bindm = [
"$mod, mouse:272, movewindow" "$mod, mouse:272, movewindow"
"$mod, mouse:273, resizewindow" "$mod, mouse:273, resizewindow"

View file

@ -28,5 +28,11 @@
esbenp.prettier-vscode esbenp.prettier-vscode
]; ];
}; };
home.packages = with pkgs; [
nixfmt-rfc-style
];
home.sessionVariables = {
EDITOR = lib.mkDefault "codium";
};
}; };
} }

View file

@ -5,6 +5,39 @@
inputs, inputs,
... ...
}: }:
let
extension = shortId: guid: {
name = guid;
value = {
install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${shortId}/latest.xpi";
installation_mode = "normal_installed";
};
};
prefs = {
# Check these out at about:config
"extensions.autoDisableScopes" = 0;
"extensions.pocket.enabled" = false;
"general.autoScroll" = true;
"general.smoothScroll" = true;
"middlemouse.contentLoadURL" = false;
# ...
};
extensions = [
# To add additional extensions, find it on addons.mozilla.org, find
# the short ID in the url (like https://addons.mozilla.org/en-US/firefox/addon/!SHORT_ID!/)
# Then go to https://addons.mozilla.org/api/v5/addons/addon/!SHORT_ID!/ to get the guid
(extension "adnauseam" "adnauseam@rednoise.org")
(extension "floccus" "floccus@handmadeideas.org")
(extension "bitwarden-password-manager" "{446900e4-71c2-419f-a6a7-df9c091e268b}")
(extension "simplelogin" "addon@simplelogin")
(extension "localcdn-fork-of-decentraleyes" "{b86e4813-687a-43e6-ab65-0bde4ab75758}")
(extension "catppuccin-web-file-icons" "{bbb880ce-43c9-47ae-b746-c3e0096c5b76}")
# ...
];
in
{ {
options = { options = {
@ -16,7 +49,32 @@
}; };
config = lib.mkIf config.internet.browsers.zen-browser.enable { config = lib.mkIf config.internet.browsers.zen-browser.enable {
home.packages = [ home.packages = [
inputs.zen-browser.packages.${pkgs.system}.default (pkgs.wrapFirefox
inputs.zen-browser.packages.${pkgs.stdenv.hostPlatform.system}.zen-browser-unwrapped
{
extraPrefs = lib.concatLines (
lib.mapAttrsToList (
name: value: ''lockPref(${lib.strings.toJSON name}, ${lib.strings.toJSON value});''
) prefs
);
extraPolicies = {
DisableTelemetry = true;
ExtensionSettings = builtins.listToAttrs extensions;
SearchEngines = {
Default = "MartyTF's Series of Tubes";
Add = [
{
Name = "MartyTF's Series of Tubes";
URLTemplate = "https://search.marty.tf/?q={searchTerms}";
IconURL = "https://wiki.nixos.org/favicon.ico";
Alias = "@sgx";
}
];
};
};
}
)
]; ];
}; };
} }

27
modules/media/audio.nix Normal file
View file

@ -0,0 +1,27 @@
{
config,
lib,
pkgs,
...
}:
{
options = {
media = {
audio = {
enable = lib.mkEnableOption "enable all audio media";
tenacity.enable = lib.mkEnableOption "enable tenacity";
};
};
};
config = {
media.audio = lib.mkIf config.media.audio.enable {
tenacity.enable = lib.mkDefault true;
};
home.packages = with pkgs; [
(lib.mkIf (config.media.audio.tenacity.enable) tenacity)
];
};
}

14
modules/media/default.nix Normal file
View file

@ -0,0 +1,14 @@
{
config,
lib,
pkgs,
...
}:
{
imports = [
./images.nix
./video.nix
./audio.nix
];
}

31
modules/media/images.nix Normal file
View file

@ -0,0 +1,31 @@
{
config,
lib,
pkgs,
...
}:
{
options = {
media = {
images = {
enable = lib.mkEnableOption "enable all image media";
nomacs.enable = lib.mkEnableOption "enable nomacs";
gimp.enable = lib.mkEnableOption "enable gimp";
};
};
};
config = {
media.images = lib.mkIf config.media.images.enable {
nomacs.enable = lib.mkDefault true;
gimp.enable = lib.mkDefault true;
};
home.packages = with pkgs; [
(lib.mkIf (config.media.images.nomacs.enable) nomacs)
(lib.mkIf (config.media.images.gimp.enable) gimp3-with-plugins)
];
};
}

33
modules/media/video.nix Normal file
View file

@ -0,0 +1,33 @@
{
config,
lib,
pkgs,
...
}:
{
options = {
media = {
video = {
enable = lib.mkEnableOption "enable all video media";
mpv.enable = lib.mkEnableOption "enable mpv";
kdenlive.enable = lib.mkEnableOption "enable kdenlive";
};
};
};
config = {
media.video = lib.mkIf config.media.video.enable {
kdenlive.enable = lib.mkDefault true;
mpv.enable = lib.mkDefault true;
};
home.packages = with pkgs; [
(lib.mkIf (config.media.video.kdenlive.enable) kdePackages.kdenlive)
];
programs = {
mpv = lib.mkIf config.media.video.mpv.enable {
enable = true;
};
};
};
}

View file

@ -19,11 +19,54 @@
programs = { programs = {
ranger = { ranger = {
enable = true; enable = true;
extraPackages = [
];
settings = {
viewmode = "miller";
column_ratios = "1,3,4";
show_hidden = true;
confirm_on_delete = "multiple";
use_preview_script = true;
automatically_count_files = true;
open_all_images = true;
vcs_aware = true;
vcs_backend_git = "enabled";
vcs_msg_length = 50;
preview_images = true;
preview_images_method = lib.mkIf config.terminal.kitty.enable "kitty";
preview_files = true;
preview_directories = true;
collapse_preview = false;
save_console_history = true;
status_bar_on_top = false;
draw_progress_bar_in_status_bar = true;
draw_borders = "both";
dirname_in_tabs = true;
mouse_enabled = false;
display_size_in_main_column = true;
display_size_in_status_bar = true;
display_free_space_in_status_bar = true;
display_tags_in_all_columns = true;
update_title = true;
update_tmux_title = true;
shorten_title = 10;
hostname_in_titlebar = true;
tilde_in_titlebar = false;
max_history_size = 100;
max_console_history_size = 200;
scroll_offset = 8;
flushinput = true;
autosave_bookmarks = true;
show_cursor = false;
sort = "natural";
sort_case_insensitive = true;
sort_directories_first = true;
};
}; };
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
unzip unzip
]; ];
}; };
} }

View file

@ -8,7 +8,7 @@
{ {
options = { options = {
terminal = { terminal = {
kitty.enable = lib.mkEnableOption "enable git"; kitty.enable = lib.mkEnableOption "enable kitty";
}; };
}; };
@ -16,7 +16,65 @@
programs = { programs = {
kitty = { kitty = {
enable = true; enable = true;
enableGitIntegration = true;
shellIntegration = {
enableFishIntegration = true;
enableBashIntegration = true;
};
font = {
name = "FiraCode Nerd Font";
size = 16;
package = pkgs.nerd-fonts.fira-code;
};
themeFile = "Catppuccin-Mocha";
settings = {
wayland_titlebar_color = "system";
macos_titlebar_color = "system";
# The most important setting of the whole confiG
confirm_os_window_close = 0;
# Cursor
cursor_shape = "underline";
# Scrollback
scrollback_lines = 10000;
# Link Behaviour
url_style = "straight";
open_url_with = "default";
# Layouts
remember_window_size = "no";
enabled_layouts = "splits, tall";
window_resize_step_cells = 3;
window_resize_step_lines = 3;
window_border_width = "3 pt";
draw_minimal_borders = "yes";
window_margin_width = 10;
window_padding_width = 10;
# Borders/Appearance
inactive_text_alpha = 0.5;
hide_window_decorations = "no";
# tab bar
tab_bar_min_tabs = 1;
tab_bar_edge = "bottom";
tab_bar_style = "powerline";
tab_powerline_style = "slanted";
tab_title_template = "{title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}";
};
}; };
}; };
home.sessionVariables = {
TERM = lib.mkDefault "xterm-kitty";
};
}; };
} }

View file

@ -7,7 +7,7 @@
{ {
environment.systemPackages = [ pkgs.nerd-fonts.fira-code ]; environment.systemPackages = [ pkgs.nerd-fonts.fira-code ];
console = { # console = {
font = "FiraCode Nerd Font"; # font = "FiraCode Nerd Font";
}; # };
} }