Mon Jun 3 04:02:50 PM CEST 2024
This commit is contained in:
parent
441d5bfa22
commit
a8d4ffd131
46
flake.nix
46
flake.nix
|
@ -22,13 +22,7 @@
|
|||
nur.url = "github:nix-community/NUR";
|
||||
};
|
||||
|
||||
outputs =
|
||||
{ self
|
||||
, nixpkgs
|
||||
, home-manager
|
||||
, nur
|
||||
, ...
|
||||
}@inputs:
|
||||
outputs = { self, nixpkgs, home-manager, nur, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
|
@ -48,7 +42,9 @@
|
|||
|
||||
nix.settings = {
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
trusted-public-keys = [
|
||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||
];
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
auto-optimise-store = true;
|
||||
};
|
||||
|
@ -99,12 +95,7 @@
|
|||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
wget
|
||||
curl
|
||||
git
|
||||
];
|
||||
environment.systemPackages = with pkgs; [ wget curl git ];
|
||||
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
|
@ -116,7 +107,8 @@
|
|||
|
||||
networking.firewall.enable = false;
|
||||
system.stateVersion = "23.11";
|
||||
environment.sessionVariables.NIXOS_OZONE_WL = "1"; #hint electron apps to use wayland:
|
||||
environment.sessionVariables.NIXOS_OZONE_WL =
|
||||
"1"; # hint electron apps to use wayland:
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
noto-fonts
|
||||
|
@ -130,31 +122,25 @@
|
|||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager = {
|
||||
extraSpecialArgs = { inherit inputs; }; # allows access to flake inputs in hm modules
|
||||
extraSpecialArgs = {
|
||||
inherit inputs;
|
||||
}; # allows access to flake inputs in hm modules
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.${user} = {
|
||||
imports = [ ./home/${host}.nix ];
|
||||
};
|
||||
users.${user} = { imports = [ ./home/${host}.nix ]; };
|
||||
};
|
||||
}
|
||||
./hosts/${host}
|
||||
];
|
||||
mkSystem = host: cfg: nixpkgs.lib.nixosSystem {
|
||||
mkSystem = host: cfg:
|
||||
nixpkgs.lib.nixosSystem {
|
||||
system = cfg.system or "x86_64-linux";
|
||||
modules = (commonModules host cfg.user) ++ (cfg.modules or [ ]);
|
||||
specialArgs = inputs;
|
||||
};
|
||||
systems = {
|
||||
nixos = {
|
||||
user = "user";
|
||||
};
|
||||
Kell = {
|
||||
user = "user";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
nixosConfigurations = nixpkgs.lib.mapAttrs mkSystem systems;
|
||||
nixos = { user = "user"; };
|
||||
Kell = { user = "user"; };
|
||||
};
|
||||
in { nixosConfigurations = nixpkgs.lib.mapAttrs mkSystem systems; };
|
||||
}
|
||||
|
|
|
@ -24,11 +24,5 @@
|
|||
name = "Papirus";
|
||||
gtk.iconTheme.package = pkgs.papirus-icon-theme;
|
||||
};
|
||||
programs.waybar = {
|
||||
settings = {
|
||||
mainBar = {
|
||||
output = "DP-2";
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.waybar = { settings = { mainBar = { output = "DP-2"; }; }; };
|
||||
}
|
||||
|
|
|
@ -77,47 +77,47 @@
|
|||
action = "ReceiveChar";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[72;6u";
|
||||
chars = "u001B[72;6u";
|
||||
key = "H";
|
||||
mods = "Control|Shift";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[74;6u";
|
||||
chars = "u001B[74;6u";
|
||||
key = "J";
|
||||
mods = "Control|Shift";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[75;6u";
|
||||
chars = "u001B[75;6u";
|
||||
key = "K";
|
||||
mods = "Control|Shift";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[76;6u";
|
||||
chars = "u001B[76;6u";
|
||||
key = "L";
|
||||
mods = "Control|Shift";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[105;5u";
|
||||
chars = "u001B[105;5u";
|
||||
key = "I";
|
||||
mods = "Control";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[46;5u";
|
||||
chars = "u001B[46;5u";
|
||||
key = "Period";
|
||||
mods = "Control";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[44;5u";
|
||||
chars = "u001B[44;5u";
|
||||
key = "Comma";
|
||||
mods = "Control";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[59;5u";
|
||||
chars = "u001B[59;5u";
|
||||
key = "Semicolon";
|
||||
mods = "Control";
|
||||
}
|
||||
{
|
||||
chars = "\u001B[13;2u";
|
||||
chars = "u001B[13;2u";
|
||||
key = "Return";
|
||||
mods = "Shift";
|
||||
}
|
||||
|
|
|
@ -1,23 +1,13 @@
|
|||
{ inputs, config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./zsh
|
||||
./git
|
||||
./nvim
|
||||
./email
|
||||
./lf
|
||||
];
|
||||
imports = [ ./zsh ./git ./nvim ./email ./lf ];
|
||||
|
||||
home.stateVersion = "24.11";
|
||||
targets.genericLinux.enable = true;
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
programs.home-manager.enable = true;
|
||||
home.packages = with pkgs; [
|
||||
htop
|
||||
waypipe
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [ htop waypipe ];
|
||||
|
||||
home.sessionVariables = {
|
||||
XDG_CONFIG_HOME = "${config.xdg.configHome}";
|
||||
|
|
|
@ -2,26 +2,21 @@
|
|||
|
||||
{
|
||||
home.file = {
|
||||
".mailcap".text = "text/html; w3m -dump -o -document_charset=%{charset} %s; nametemplate=%s.html; copiousoutput";
|
||||
".mailcap".text =
|
||||
"text/html; w3m -dump -o -document_charset=%{charset} %s; nametemplate=%s.html; copiousoutput";
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
mailcap
|
||||
];
|
||||
home.packages = with pkgs; [ mailcap ];
|
||||
|
||||
programs.notmuch = {
|
||||
enable = true;
|
||||
extraConfig = {
|
||||
database = {
|
||||
path = "/home/user/.config/aerc/mail";
|
||||
};
|
||||
database = { path = "/home/user/.config/aerc/mail"; };
|
||||
user = {
|
||||
name = "Thomas Avé";
|
||||
primary_email = "email@thomasave.be";
|
||||
other_email = "Thomas.Ave@uantwerpen.be;Thomas.Ave@imec.be;";
|
||||
};
|
||||
maildir = {
|
||||
synchronize_flags = "true";
|
||||
};
|
||||
maildir = { synchronize_flags = "true"; };
|
||||
};
|
||||
};
|
||||
programs.aerc = {
|
||||
|
@ -157,9 +152,7 @@
|
|||
};
|
||||
};
|
||||
extraConfig = {
|
||||
general = {
|
||||
term = "xterm-256color";
|
||||
};
|
||||
general = { term = "xterm-256color"; };
|
||||
ui = {
|
||||
border-char-vertical = "│";
|
||||
border-char-horizontal = "─";
|
||||
|
@ -170,12 +163,8 @@
|
|||
dirlist-right = "{{if .Unread}}{{humanReadable .Unread}}{{end}}";
|
||||
dirlist-tree = true;
|
||||
};
|
||||
viewer = {
|
||||
pager = "nvim -u $XDG_CONFIG_HOME/nvim/aerc.lua";
|
||||
};
|
||||
compose = {
|
||||
address-book-cmd = "notmuch address \"\%s\"";
|
||||
};
|
||||
viewer = { pager = "nvim -u $XDG_CONFIG_HOME/nvim/aerc.lua"; };
|
||||
compose = { address-book-cmd = ''notmuch address "%s"''; };
|
||||
multipart-converters = {
|
||||
"text/html" = "w3m -dump -o display_link_number=1 -T text/html";
|
||||
};
|
||||
|
@ -185,13 +174,14 @@
|
|||
"message/delivery-status" = "cat";
|
||||
"message/rfc822" = "cat";
|
||||
"text/html" = "w3m -dump -o display_link_number=1 -T text/html";
|
||||
"text/*" = "bat -fP --file-name=\"$AERC_FILENAME\"";
|
||||
"text/*" = ''bat -fP --file-name="$AERC_FILENAME"'';
|
||||
"application/x-sh" = "bat -fP -l sh";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.file."${config.xdg.configHome}/aerc/map.conf".text = "Inbox=tag:inbox and not tag:archived and not tag:deleted";
|
||||
home.file."${config.xdg.configHome}/aerc/map.conf".text =
|
||||
"Inbox=tag:inbox and not tag:archived and not tag:deleted";
|
||||
home.file."${config.xdg.configHome}/aerc/stylesets/catppuccin-mocha".text = ''
|
||||
*.default=true
|
||||
*.normal=true
|
||||
|
|
|
@ -8,8 +8,7 @@ lock-true = {
|
|||
Value = true;
|
||||
Status = "locked";
|
||||
};
|
||||
in
|
||||
{
|
||||
in {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
policies = {
|
||||
|
@ -28,15 +27,18 @@ in
|
|||
installation_mode = "normal_installed";
|
||||
};
|
||||
"@contain-google" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/google-container/latest.xpi";
|
||||
install_url =
|
||||
"https://addons.mozilla.org/firefox/downloads/latest/google-container/latest.xpi";
|
||||
installation_mode = "normal_installed";
|
||||
};
|
||||
"{ea4204c0-3209-4116-afd2-2a208e21a779}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/enable-bing-chat/latest.xpi";
|
||||
install_url =
|
||||
"https://addons.mozilla.org/firefox/downloads/latest/enable-bing-chat/latest.xpi";
|
||||
installation_mode = "normal_installed";
|
||||
};
|
||||
"{3e4d2037-d300-4e95-859d-3cba866f46d3}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/private-internet-access-ext/latest.xpi";
|
||||
install_url =
|
||||
"https://addons.mozilla.org/firefox/downloads/latest/private-internet-access-ext/latest.xpi";
|
||||
installation_mode = "normal_installed";
|
||||
};
|
||||
};
|
||||
|
@ -79,10 +81,16 @@ in
|
|||
"extensions.pocket.enabled" = lock-false;
|
||||
"extensions.autoDisableScopes" = 0;
|
||||
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
||||
"browser.contentblocking.category" = { Value = "strict"; Status = "locked"; };
|
||||
"browser.uiCustomization.state" = ''{"placements":{"widget-overflow-fixed-list":["fxa-toolbar-menu-button","developer-button"],"unified-extensions-area":["sponsorblocker_ajay_app-browser-action","_testpilot-containers-browser-action","_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action","beyond20_kakaroto_homelinux_net-browser-action","_d7742d87-e61d-4b78-b8a1-b469842139fa_-browser-action","_contain-facebook-browser-action","jid1-kkzogwgsw3ao4q_jetpack-browser-action","jid1-mnnxcxisbpnsxq_jetpack-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","chrome-gnome-shell_gnome_org-browser-action","_ea4204c0-3209-4116-afd2-2a208e21a779_-browser-action","_f209234a-76f0-4735-9920-eb62507a54cd_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","display-anchors_robwu_nl-browser-action","firefoxcolor_mozilla_com-browser-action","search_kagi_com-browser-action","_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","urlbar-container","downloads-button","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_12cf650b-1822-40aa-bff0-996df6948878_-browser-action","_3e4d2037-d300-4e95-859d-3cba866f46d3_-browser-action","save-as-pdf-ff_pdfcrowd_com-browser-action","user-agent-switcher_ninetailed_ninja-browser-action","_d66c8515-1e0d-408f-82ee-2682f2362726_-browser-action","ublock0_raymondhill_net-browser-action","reset-pbm-toolbar-button","adguardadblocker_adguard_com-browser-action","unified-extensions-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["import-button","personal-bookmarks"]},"seen":["developer-button","profiler-button","chrome-gnome-shell_gnome_org-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","_contain-facebook-browser-action","_testpilot-containers-browser-action","jid1-kkzogwgsw3ao4q_jetpack-browser-action","jid1-mnnxcxisbpnsxq_jetpack-browser-action","ublock0_raymondhill_net-browser-action","_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action","beyond20_kakaroto_homelinux_net-browser-action","_12cf650b-1822-40aa-bff0-996df6948878_-browser-action","_3e4d2037-d300-4e95-859d-3cba866f46d3_-browser-action","save-as-pdf-ff_pdfcrowd_com-browser-action","_d7742d87-e61d-4b78-b8a1-b469842139fa_-browser-action","user-agent-switcher_ninetailed_ninja-browser-action","_d66c8515-1e0d-408f-82ee-2682f2362726_-browser-action","_ea4204c0-3209-4116-afd2-2a208e21a779_-browser-action","adguardadblocker_adguard_com-browser-action","_f209234a-76f0-4735-9920-eb62507a54cd_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","sponsorblocker_ajay_app-browser-action","display-anchors_robwu_nl-browser-action","firefoxcolor_mozilla_com-browser-action","search_kagi_com-browser-action","_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"],"dirtyAreaCache":["nav-bar","PersonalToolbar","toolbar-menubar","TabsToolbar","widget-overflow-fixed-list","unified-extensions-area"],"currentVersion":20,"newElementCount":11}'';
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" =
|
||||
lock-false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" =
|
||||
lock-false;
|
||||
"browser.contentblocking.category" = {
|
||||
Value = "strict";
|
||||
Status = "locked";
|
||||
};
|
||||
"browser.uiCustomization.state" = ''
|
||||
{"placements":{"widget-overflow-fixed-list":["fxa-toolbar-menu-button","developer-button"],"unified-extensions-area":["sponsorblocker_ajay_app-browser-action","_testpilot-containers-browser-action","_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action","beyond20_kakaroto_homelinux_net-browser-action","_d7742d87-e61d-4b78-b8a1-b469842139fa_-browser-action","_contain-facebook-browser-action","jid1-kkzogwgsw3ao4q_jetpack-browser-action","jid1-mnnxcxisbpnsxq_jetpack-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","chrome-gnome-shell_gnome_org-browser-action","_ea4204c0-3209-4116-afd2-2a208e21a779_-browser-action","_f209234a-76f0-4735-9920-eb62507a54cd_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","display-anchors_robwu_nl-browser-action","firefoxcolor_mozilla_com-browser-action","search_kagi_com-browser-action","_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","urlbar-container","downloads-button","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_12cf650b-1822-40aa-bff0-996df6948878_-browser-action","_3e4d2037-d300-4e95-859d-3cba866f46d3_-browser-action","save-as-pdf-ff_pdfcrowd_com-browser-action","user-agent-switcher_ninetailed_ninja-browser-action","_d66c8515-1e0d-408f-82ee-2682f2362726_-browser-action","ublock0_raymondhill_net-browser-action","reset-pbm-toolbar-button","adguardadblocker_adguard_com-browser-action","unified-extensions-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["import-button","personal-bookmarks"]},"seen":["developer-button","profiler-button","chrome-gnome-shell_gnome_org-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","_contain-facebook-browser-action","_testpilot-containers-browser-action","jid1-kkzogwgsw3ao4q_jetpack-browser-action","jid1-mnnxcxisbpnsxq_jetpack-browser-action","ublock0_raymondhill_net-browser-action","_531906d3-e22f-4a6c-a102-8057b88a1a63_-browser-action","beyond20_kakaroto_homelinux_net-browser-action","_12cf650b-1822-40aa-bff0-996df6948878_-browser-action","_3e4d2037-d300-4e95-859d-3cba866f46d3_-browser-action","save-as-pdf-ff_pdfcrowd_com-browser-action","_d7742d87-e61d-4b78-b8a1-b469842139fa_-browser-action","user-agent-switcher_ninetailed_ninja-browser-action","_d66c8515-1e0d-408f-82ee-2682f2362726_-browser-action","_ea4204c0-3209-4116-afd2-2a208e21a779_-browser-action","adguardadblocker_adguard_com-browser-action","_f209234a-76f0-4735-9920-eb62507a54cd_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","sponsorblocker_ajay_app-browser-action","display-anchors_robwu_nl-browser-action","firefoxcolor_mozilla_com-browser-action","search_kagi_com-browser-action","_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"],"dirtyAreaCache":["nav-bar","PersonalToolbar","toolbar-menubar","TabsToolbar","widget-overflow-fixed-list","unified-extensions-area"],"currentVersion":20,"newElementCount":11}'';
|
||||
"privacy.trackingprotection.enabled" = true;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
{ inputs
|
||||
, pkgs
|
||||
, ...
|
||||
}:
|
||||
{ inputs, pkgs, ... }:
|
||||
let
|
||||
hyprland = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
playerctl = "${pkgs.playerctl}/bin/playerctl";
|
||||
|
@ -17,11 +14,11 @@ let
|
|||
rofi = "${pkgs.rofi}/bin/rofi";
|
||||
jq = "${pkgs.jq}/bin/jq";
|
||||
rofi-ykman = pkgs.writeShellScriptBin "rofi-ykman" ''
|
||||
accounts=''$(${pkgs.yubikey-manager}/bin/ykman oath accounts list)
|
||||
accounts=$(${pkgs.yubikey-manager}/bin/ykman oath accounts list)
|
||||
prompt="YubiKey OATH"
|
||||
account=''$(echo "''${accounts/, TOTP/\n}" | awk '{ print $0 "\0icon\x1fyubioath"; }' | ${rofi} -dmenu -i -p "''$prompt" ''${shortcuts[@]})
|
||||
code=''$(${pkgs.yubikey-manager}/bin/ykman oath accounts code "''$account")
|
||||
IFS=', ' read -r -a code <<< "''$code"
|
||||
account=$(echo "''${accounts/, TOTP/\n}" | awk '{ print $0 "\0icon\x1fyubioath"; }' | ${rofi} -dmenu -i -p "$prompt" ''${shortcuts[@]})
|
||||
code=$(${pkgs.yubikey-manager}/bin/ykman oath accounts code "$account")
|
||||
IFS=', ' read -r -a code <<< "$code"
|
||||
echo -n "''${code[-1]}" | ${pkgs.wl-clipboard}/bin/wl-copy;
|
||||
'';
|
||||
|
||||
|
@ -60,25 +57,21 @@ let
|
|||
fi
|
||||
fi
|
||||
'';
|
||||
in
|
||||
{
|
||||
in {
|
||||
services.kdeconnect = {
|
||||
enable = true;
|
||||
package = pkgs.kdePackages.kdeconnect-kde;
|
||||
indicator = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
];
|
||||
home.packages = with pkgs; [ wl-clipboard ];
|
||||
|
||||
services.hyprpaper = {
|
||||
enable = true;
|
||||
settings = {
|
||||
ipc = "on";
|
||||
splash = false;
|
||||
preload =
|
||||
[ "${./files/wallpaper.png}" ];
|
||||
preload = [ "${./files/wallpaper.png}" ];
|
||||
wallpaper = [
|
||||
# Fill in by host-specific config!
|
||||
# "Display,${./files/wallpaper.png}"
|
||||
|
@ -127,9 +120,7 @@ in
|
|||
"TERMINAL,${alacritty}"
|
||||
"WLR_RENDERER_ALLOW_SOFTWARE,1"
|
||||
];
|
||||
debug = {
|
||||
disable_logs = false;
|
||||
};
|
||||
debug = { disable_logs = false; };
|
||||
windowrulev2 = [
|
||||
"float, title:^(rofi)(.*)$"
|
||||
"center, title:^(rofi)(.*)$"
|
||||
|
@ -138,9 +129,7 @@ in
|
|||
"minsize 1 1, title:^()$,class:^(steam)$"
|
||||
"stayfocused, title:^()$,class:^(steam)$"
|
||||
];
|
||||
windowrule = [
|
||||
"noanim,waybar"
|
||||
];
|
||||
windowrule = [ "noanim,waybar" ];
|
||||
monitor = [
|
||||
"DP-3,preferred,0x550,1"
|
||||
"DP-2,preferred,1920x0,1"
|
||||
|
@ -160,20 +149,12 @@ in
|
|||
kb_options = "compose:rctrl, caps:super, altwin:swap_alt_win";
|
||||
numlock_by_default = true;
|
||||
};
|
||||
binds = {
|
||||
scroll_event_delay = 1;
|
||||
};
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
};
|
||||
misc = {
|
||||
disable_hyprland_logo = 1;
|
||||
};
|
||||
binds = { scroll_event_delay = 1; };
|
||||
xwayland = { force_zero_scaling = true; };
|
||||
misc = { disable_hyprland_logo = 1; };
|
||||
decoration = {
|
||||
rounding = 1;
|
||||
blur = {
|
||||
enabled = false;
|
||||
};
|
||||
blur = { enabled = false; };
|
||||
};
|
||||
animations = {
|
||||
enabled = "yes";
|
||||
|
@ -216,11 +197,14 @@ in
|
|||
"$mainMod, F, togglefloating,"
|
||||
"$mainMod, SPACE, togglesplit, # dwindle"
|
||||
"CONTROL_L ALT_L, L, exec, ${swaylock}"
|
||||
"$mainMod, C, exec, cliphist list | awk '{print $0, \"\0icon\x1fcom.github.davidmhewitt.clipped\"}' | ${rofi} -dmenu -display-columns 2 | cliphist decode | wl-copy"
|
||||
''
|
||||
$mainMod, C, exec, cliphist list | awk '{print $0, "0iconx1fcom.github.davidmhewitt.clipped"}' | ${rofi} -dmenu -display-columns 2 | cliphist decode | wl-copy''
|
||||
"$mainMod, Y, exec, ${rofi-ykman}/bin/rofi-ykman"
|
||||
"$mainMod, N, exec, ${./files/rofi-ssh.sh}"
|
||||
|
||||
"$mainMod, Escape, exec, ${rofi} -show power-menu -modi power-menu:${./files/rofi-power-menu.sh}"
|
||||
"$mainMod, Escape, exec, ${rofi} -show power-menu -modi power-menu:${
|
||||
./files/rofi-power-menu.sh
|
||||
}"
|
||||
|
||||
",XF86MonBrightnessUp, exec, xbacklight -inc 10"
|
||||
",XF86MonBrightnessDown, exec, xbacklight -dec 10"
|
||||
|
@ -235,7 +219,7 @@ in
|
|||
"$mainMod,XF86AudioMute, exec, ${playerctl} play-pause"
|
||||
"$mainMod,XF86AudioRaiseVolume, exec, ${playerctl} next"
|
||||
"$mainMod,XF86AudioLowerVolume, exec, ${playerctl} previous"
|
||||
", Print, exec, grim -g \"$(slurp -d)\" - | wl-copy"
|
||||
'', Print, exec, grim -g "$(slurp -d)" - | wl-copy''
|
||||
|
||||
"$mainMod, H, exec, ${./files/vim-hypr-nav.sh} l"
|
||||
"$mainMod, L, exec, ${./files/vim-hypr-nav.sh} r"
|
||||
|
@ -257,27 +241,16 @@ in
|
|||
"$mainMod, T, split-workspace, empty"
|
||||
"$mainMod, TAB, split-workspace, m+1"
|
||||
"$mainMod SHIFT, TAB, split-workspace, m-1"
|
||||
]
|
||||
++ (
|
||||
] ++ (
|
||||
# workspaces
|
||||
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
|
||||
builtins.concatLists (builtins.genList
|
||||
(
|
||||
x:
|
||||
builtins.concatLists (builtins.genList (x:
|
||||
let
|
||||
ws =
|
||||
let
|
||||
c = (x + 1) / 10;
|
||||
in
|
||||
builtins.toString (x + 1 - (c * 10));
|
||||
in
|
||||
[
|
||||
ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
|
||||
in [
|
||||
"$mainMod, ${ws}, split-workspace, ${toString (x + 1)}"
|
||||
"$mainMod SHIFT, ${ws}, split-movetoworkspace, ${toString (x + 1)}"
|
||||
]
|
||||
)
|
||||
10)
|
||||
);
|
||||
]) 10));
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,8 +19,8 @@
|
|||
"<backspace2>" = "quit";
|
||||
"<c-e>" = "half-up";
|
||||
"." = "set hidden!";
|
||||
"o" = "$nvim -c \"lua require(\\\"oil\\\").open(\\\"$PWD\\\")\"";
|
||||
"-" = "$nvim -c \"lua require(\\\"oil\\\").open(\\\"$PWD\\\")\"";
|
||||
"o" = ''$nvim -c "lua require(\"oil\").open(\"$PWD\")"'';
|
||||
"-" = ''$nvim -c "lua require(\"oil\").open(\"$PWD\")"'';
|
||||
"<enter>" = "open";
|
||||
"<c-t>" = ":jump <enter>";
|
||||
};
|
||||
|
@ -32,8 +32,6 @@
|
|||
}}
|
||||
'';
|
||||
};
|
||||
cmdKeybindings = {
|
||||
q = "quit";
|
||||
};
|
||||
cmdKeybindings = { q = "quit"; };
|
||||
};
|
||||
}
|
||||
|
|
|
@ -10,17 +10,9 @@
|
|||
|
||||
services.hyprpaper = {
|
||||
settings = {
|
||||
wallpaper = [
|
||||
"Virtual-1,${./hyprland/files/wallpaper.png}"
|
||||
];
|
||||
wallpaper = [ "Virtual-1,${./hyprland/files/wallpaper.png}" ];
|
||||
};
|
||||
};
|
||||
|
||||
programs.waybar = {
|
||||
settings = {
|
||||
mainBar = {
|
||||
output = "Virtual-1";
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.waybar = { settings = { mainBar = { output = "Virtual-1"; }; }; };
|
||||
}
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
papirus-icon-theme
|
||||
];
|
||||
home.packages = with pkgs; [ papirus-icon-theme ];
|
||||
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
|
@ -14,11 +12,8 @@
|
|||
kb-cancel = "Super_L+XF86Launch5,Escape";
|
||||
combi-hide-mode-prefix = true;
|
||||
};
|
||||
theme =
|
||||
let
|
||||
inherit (config.lib.formats.rasi) mkLiteral;
|
||||
in
|
||||
{
|
||||
theme = let inherit (config.lib.formats.rasi) mkLiteral;
|
||||
in {
|
||||
"*" = {
|
||||
background = mkLiteral "#0f111a";
|
||||
foreground = mkLiteral "#f1f1f1";
|
||||
|
@ -117,9 +112,7 @@
|
|||
border = mkLiteral "10px";
|
||||
};
|
||||
|
||||
"element-text" = {
|
||||
padding = mkLiteral "20px 0px 0px 10px";
|
||||
};
|
||||
"element-text" = { padding = mkLiteral "20px 0px 0px 10px"; };
|
||||
|
||||
"element selected" = {
|
||||
background-color = mkLiteral "@selected";
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
{ inputs
|
||||
, pkgs
|
||||
, ...
|
||||
}:
|
||||
{ inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.waybar = {
|
||||
|
@ -15,7 +12,18 @@
|
|||
# output = "DP-2"; # Fill in with host-specific config!
|
||||
modules-left = [ "wlr/taskbar" ];
|
||||
modules-center = [ "hyprland/workspaces" ];
|
||||
modules-right = [ "tray" "wireplumber" "cpu#cpu2" "cpu" "memory" "custom/updates" "temperature" "battery" "clock" "clock#clock2" ];
|
||||
modules-right = [
|
||||
"tray"
|
||||
"wireplumber"
|
||||
"cpu#cpu2"
|
||||
"cpu"
|
||||
"memory"
|
||||
"custom/updates"
|
||||
"temperature"
|
||||
"battery"
|
||||
"clock"
|
||||
"clock#clock2"
|
||||
];
|
||||
"wlr/taskbar" = {
|
||||
on-click = "activate";
|
||||
on-click-right = "close";
|
||||
|
@ -34,12 +42,8 @@
|
|||
warp-on-scroll = false;
|
||||
format = "{name}";
|
||||
};
|
||||
"hyprland/window" = {
|
||||
max-length = 50;
|
||||
};
|
||||
tray = {
|
||||
spacing = 10;
|
||||
};
|
||||
"hyprland/window" = { max-length = 50; };
|
||||
tray = { spacing = 10; };
|
||||
"clock#clock2" = {
|
||||
timezone = "Europe/Brussels";
|
||||
format = "{:%H:%M:%S}";
|
||||
|
@ -61,8 +65,10 @@
|
|||
interval = 5;
|
||||
};
|
||||
"custom/updates" = {
|
||||
exec = "bash -c \"checkupdates | wc -l\"";
|
||||
on-click = "alacritty -e bash -c \"yay ; echo '\nDone, press any key to exit...' ; read\"";
|
||||
exec = ''bash -c "checkupdates | wc -l"'';
|
||||
on-click = ''
|
||||
alacritty -e bash -c "yay ; echo '
|
||||
Done, press any key to exit...' ; read"'';
|
||||
interval = 60;
|
||||
format = "{} ";
|
||||
};
|
||||
|
|
|
@ -17,7 +17,8 @@
|
|||
BROWSER = "firefox";
|
||||
GPULAB_CERT = "${config.xdg.dataHome}/gpulab.pem";
|
||||
GPULAB_DEV = "False";
|
||||
GCC_COLORS = "error = '01;31:warning = '01;35:note = '01;36:caret = '01;32:locus = '01:quote = '01'";
|
||||
GCC_COLORS =
|
||||
"error = '01;31:warning = '01;35:note = '01;36:caret = '01;32:locus = '01:quote = '01'";
|
||||
ARCHFLAGS = "-arch x86_64";
|
||||
TERM = "screen-256color";
|
||||
PYTHONDONTWRITEBYTECODE = "1";
|
||||
|
@ -28,9 +29,7 @@
|
|||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
programs.fzf = {
|
||||
enable = true;
|
||||
};
|
||||
programs.fzf = { enable = true; };
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
|
@ -62,17 +61,22 @@
|
|||
|
||||
ll = "ls -lhat";
|
||||
ls = "ls --color=auto";
|
||||
lf = "cd \"\$(${pkgs.lf}/bin/lf -print-last-dir)\"";
|
||||
lf = ''cd "$(${pkgs.lf}/bin/lf -print-last-dir)"'';
|
||||
|
||||
compress = "tar --use-compress-program = lbzip2 -cvf";
|
||||
wget = "wget --hsts-file = \"$XDG_DATA_HOME/wget-hsts\"";
|
||||
wget = ''wget --hsts-file = "$XDG_DATA_HOME/wget-hsts"'';
|
||||
python = "python3";
|
||||
v = "nvim -c ':lua require(\"oil\").open()' && cd \"\$(cat /tmp/oil_dir 2> /dev/null || pwd)\"";
|
||||
cpr = "rsync --archive -hh --partial --info = stats1,progress2 --modify-window = 1";
|
||||
mvr = "rsync --archive -hh --partial --info = stats1,progress2 --modify-window = 1 --remove-source-files";
|
||||
rg = "rg -i --colors 'match:bg:yellow' --colors 'match:fg:black' --colors 'match:style:nobold' --colors 'path:fg:green' --colors 'path:style:bold' --colors 'line:fg:yellow' --colors 'line:style:bold'";
|
||||
ag = "rg -i --colors 'match:bg:yellow' --colors 'match:fg:black' --colors 'match:style:nobold' --colors 'path:fg:green' --colors 'path:style:bold' --colors 'line:fg:yellow' --colors 'line:style:bold'";
|
||||
push = "git add -A && git commit -m \"`date`\" && git push";
|
||||
v = ''
|
||||
nvim -c ':lua require("oil").open()' && cd "$(cat /tmp/oil_dir 2> /dev/null || pwd)"'';
|
||||
cpr =
|
||||
"rsync --archive -hh --partial --info = stats1,progress2 --modify-window = 1";
|
||||
mvr =
|
||||
"rsync --archive -hh --partial --info = stats1,progress2 --modify-window = 1 --remove-source-files";
|
||||
rg =
|
||||
"rg -i --colors 'match:bg:yellow' --colors 'match:fg:black' --colors 'match:style:nobold' --colors 'path:fg:green' --colors 'path:style:bold' --colors 'line:fg:yellow' --colors 'line:style:bold'";
|
||||
ag =
|
||||
"rg -i --colors 'match:bg:yellow' --colors 'match:fg:black' --colors 'match:style:nobold' --colors 'path:fg:green' --colors 'path:style:bold' --colors 'line:fg:yellow' --colors 'line:style:bold'";
|
||||
push = ''git add -A && git commit -m "`date`" && git push'';
|
||||
reset = "tput reset";
|
||||
};
|
||||
history.size = 10000000;
|
||||
|
|
|
@ -8,15 +8,12 @@
|
|||
HandlePowerKey=suspend
|
||||
'';
|
||||
|
||||
|
||||
# Calendar
|
||||
programs.dconf.enable = true;
|
||||
services.gnome.evolution-data-server.enable = true;
|
||||
services.gnome.gnome-online-accounts.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
wireguard-tools
|
||||
];
|
||||
environment.systemPackages = with pkgs; [ wireguard-tools ];
|
||||
# Add the server using gnome-online-accounts:
|
||||
# nix-shell -p gnome.gnome-control-center --run "gnome-control-center"
|
||||
# Just add the main webdav server and gnome-calendar will automatically pick up all available calendars.
|
||||
|
@ -27,13 +24,11 @@
|
|||
dns = [ "10.0.0.1" "fdc9:281f:04d7:9ee9::1" ];
|
||||
privateKeyFile = "/home/user/.secrets/Wireguard/wg0.key";
|
||||
listenPort = 51820;
|
||||
peers = [
|
||||
{
|
||||
peers = [{
|
||||
publicKey = "/9ppjm3yeD0duDvxrqgcHscHmftXko+0s2RbivNEy2c=";
|
||||
allowedIPs = [ "10.0.0.1/8" ];
|
||||
endpoint = "192.168.1.1:13231";
|
||||
}
|
||||
];
|
||||
}];
|
||||
};
|
||||
};
|
||||
fileSystems."/home/server" = {
|
||||
|
|
|
@ -4,22 +4,21 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/feef066a-9abf-418d-a39e-603c406a72ff";
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/feef066a-9abf-418d-a39e-603c406a72ff";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/0D9B-B227";
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/0D9B-B227";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
|
@ -35,5 +34,6 @@
|
|||
# networking.interfaces.wlp6s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
@ -1,2 +1 @@
|
|||
{
|
||||
}
|
||||
{ }
|
||||
|
|
|
@ -4,24 +4,20 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/563963bd-8e27-4c9c-a1d6-d204ea7c43ff";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/9F3C-9F3B";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
|
|
Loading…
Reference in New Issue