Compare commits

..

No commits in common. "958d050446837c3b2a4b33a4871d7fc6d720307f" and "b7525b173265815fffeeda9bbfef61688da372b0" have entirely different histories.

27 changed files with 96 additions and 482 deletions

View file

@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722100913, "lastModified": 1721571743,
"narHash": "sha256-75Hcx5Zu0f+BeCkZxN1frkYacjbkwgCq+z3doVgr4Hw=", "narHash": "sha256-hat7wggtDISBJD8kTo5MTrT+IsY/Ha2MwgjmqqijoCA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "4918e57979bbdbd05aabb20f63e1cb5dc289bcbd", "rev": "601f6cf95cbe4fef02dc7faf34bba58566c914e9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -240,11 +240,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1722203795, "lastModified": 1721598736,
"narHash": "sha256-Ml3cL8ayTGozjo8QW08J7jEPIRMWtQmdW1Y44pb2SYQ=", "narHash": "sha256-mNqXUKZA8WrCcFAUp+EgHJFmRi9ZYevW6Jeczuq0DUs=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "a9d87bd6669568741704de08b6f0328a92e29396", "rev": "672bf1f8670b200da57e2f6de4e9ed7efd8c98fc",
"revCount": 5009, "revCount": 4949,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"
@ -289,11 +289,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1721326555, "lastModified": 1718746314,
"narHash": "sha256-zCu4R0CSHEactW9JqYki26gy8h9f6rHmSwj4XJmlHgg=", "narHash": "sha256-HUklK5u86w2Yh9dOkk4FdsL8eehcOZ95jPhLixGDRQY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "5a11232266bf1a1f5952d5b179c3f4b2facaaa84", "rev": "1b61f0093afff20ab44d88ad707aed8bf2215290",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -343,11 +343,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722098849, "lastModified": 1721324102,
"narHash": "sha256-D3wIZlBNh7LuZ0NaoCpY/Pvu+xHxIVtSN+KkWZYvvVs=", "narHash": "sha256-WAZ0X6yJW1hFG6otkHBfyJDKRpNP5stsRqdEuHrFRpk=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "5dcbbc1e3de40b2cecfd2007434d86e924468f1f", "rev": "962582a090bc233c4de9d9897f46794280288989",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -391,11 +391,11 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1722132807, "lastModified": 1721628736,
"narHash": "sha256-zoaimNxqTf/x1fZ4eXBj5qdgDa0qs9JPWUCFsIPZQzs=", "narHash": "sha256-dIm/veBiLpclmij7FFXo6+23Swxxdj2nDPTMM3RzuYc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "4e77eaba554c3ec4763ecef358e6aa6ace41a6a3", "rev": "464172e98eecf9a8079a9a381ffb75789d8c0e5e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -407,11 +407,11 @@
"neovim-src": { "neovim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1722112214, "lastModified": 1721572156,
"narHash": "sha256-BSE2ivy/IQyPClatgqdTJP1DyJZ4vryqBdMuEA9NOmQ=", "narHash": "sha256-DyPWvLGftJ0kyrAtlInrztgJHZeB1kK317Icd9iRJKs=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "bdff50dee56ebf6de58d58315920abf2f8e262f7", "rev": "7381f0a1d517474dcf8d8d019cbda430ce4bff23",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -427,11 +427,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722136042, "lastModified": 1721531260,
"narHash": "sha256-x3FmT4QSyK28itMiR5zfYhUrG5nY+2dv+AIcKfmSp5A=", "narHash": "sha256-O72uxk4gYFQDwNkoBioyrR3GK9EReZmexCStBaORMW8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "c0ca47e8523b578464014961059999d8eddd4aae", "rev": "b6db9fd8dc59bb2ccb403f76d16ba8bbc1d5263d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -442,11 +442,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1721924956, "lastModified": 1721379653,
"narHash": "sha256-Sb1jlyRO+N8jBXEX9Pg9Z1Qb8Bw9QyOgLDNMEpmjZ2M=", "narHash": "sha256-8MUgifkJ7lkZs3u99UDZMB4kbOxvMEXQZ31FO3SopZ0=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5ad6a14c6bf098e98800b091668718c336effc95", "rev": "1d9c2c9b3e71b9ee663d11c5d298727dace8d374",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -474,11 +474,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1722062969, "lastModified": 1721379653,
"narHash": "sha256-QOS0ykELUmPbrrUGmegAUlpmUFznDQeR4q7rFhl8eQg=", "narHash": "sha256-8MUgifkJ7lkZs3u99UDZMB4kbOxvMEXQZ31FO3SopZ0=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b73c2221a46c13557b1b3be9c2070cc42cf01eb3", "rev": "1d9c2c9b3e71b9ee663d11c5d298727dace8d374",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -489,11 +489,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1722073938, "lastModified": 1721559948,
"narHash": "sha256-OpX0StkL8vpXyWOGUD6G+MA26wAXK6SpT94kLJXo6B4=", "narHash": "sha256-cFgdjyK/VBM3hB1RfFHXcI/VOCBVAv813s1upHKX7bI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e36e9f57337d0ff0cf77aceb58af4c805472bfae", "rev": "c19d62ad2265b16e2199c5feb4650fe459ca1c46",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -505,11 +505,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1722087241, "lastModified": 1721548954,
"narHash": "sha256-2ShmEaFi0kJVOEEu5gmlykN5dwjWYWYUJmlRTvZQRpU=", "narHash": "sha256-7cCC8+Tdq1+3OPyc3+gVo9dzUNkNIQfwSDJ2HSi2u3o=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8c50662509100d53229d4be607f1a3a31157fa12", "rev": "63d37ccd2d178d54e7fb691d7ec76000740ea24a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -520,11 +520,11 @@
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1722221352, "lastModified": 1721620571,
"narHash": "sha256-wE77bI4c4GfHTNcyluxWrA4A9BDYhFC4wW7hdFQ7Ycg=", "narHash": "sha256-lJshAnoRbhfIIvVQ5TYRuF2dvN2mS2XERfPuCtdz+bI=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "021b38de49f8678496e9286e87fa46dd23ab3d84", "rev": "6abd9135d52574152fedc0fa80403f98f62eafd3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -554,11 +554,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722219664, "lastModified": 1721614891,
"narHash": "sha256-xMOJ+HW4yj6e69PvieohUJ3dBSdgCfvI0nnCEe6/yVc=", "narHash": "sha256-1yGOh8w/yhWAZ2NJR9N/shQ1tx2n9fmGe0XrDE00i9U=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "a6fbda5d9a14fb5f7c69b8489d24afeb349c7bb4", "rev": "424a759557ed4c01cf9dbbf79a714150d64a90ad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -575,11 +575,11 @@
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1722114803, "lastModified": 1721531171,
"narHash": "sha256-s6YhI8UHwQvO4cIFLwl1wZ1eS5Cuuw7ld2VzUchdFP0=", "narHash": "sha256-AsvPw7T0tBLb53xZGcUC3YPqlIpdxoSx56u8vPCr6gU=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "eb34eb588132d653e4c4925d862f1e5a227cc2ab", "rev": "909e8cfb60d83321d85c8d17209d733658a21c95",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -620,11 +620,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722181019, "lastModified": 1720194466,
"narHash": "sha256-Lj/g1UzrsTZUixtveQix6eB3pon2j23qv5/5pzTx0LQ=", "narHash": "sha256-Rizg9efi6ue95zOp0MeIV2ZedNo+5U9G2l6yirgBUnA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "0e2f3b9c85f7bab3983098a01366876d34daf383", "rev": "b9b97e5ba23fe7bd5fa4df54696102e8aa863cf6",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -60,13 +60,4 @@
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; 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;
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
intel-vaapi-driver
libvdpau-va-gl
];
};
environment.sessionVariables = { LIBVA_DRIVER_NAME = "iHD"; }; # Force intel-media-driver
} }

View file

@ -4,7 +4,7 @@ let
in in
{ {
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
programs.zsh.initExtra = /*bash*/ '' programs.zsh.initExtra = ''
if [[ "$TERM" == "xterm-kitty" ]]; then if [[ "$TERM" == "xterm-kitty" ]]; then
alias ssh="kitty +kitten ssh" alias ssh="kitty +kitten ssh"
fi fi
@ -25,18 +25,16 @@ in
tab_bar_style = "slant"; tab_bar_style = "slant";
background_blur = 40; background_blur = 40;
background_opacity = toString 0.90; background_opacity = toString 0.90;
cursor_blink_interval = toString 0.5;
}; };
keybindings = { keybindings = {
"ctrl+a>enter" = "launch --location=vsplit --cwd=current"; "ctrl+a>enter" = "launch --location=hsplit --cwd=current";
"ctrl+a>backspace" = "launch --location=hsplit --cwd=current"; "ctrl+a>backspace" = "launch --location=vsplit --cwd=current";
"ctrl+a>h" = "neighboring_window left"; "ctrl+a>h" = "neighboring_window left";
"ctrl+a>j" = "neighboring_window down"; "ctrl+a>j" = "neighboring_window down";
"ctrl+a>k" = "neighboring_window up"; "ctrl+a>k" = "neighboring_window up";
"ctrl+a>l" = "neighboring_window right"; "ctrl+a>l" = "neighboring_window right";
"ctrl+a>t" = "new_tab_with_cwd"; "ctrl+a>t" = "new_tab_with_cwd";
"ctrl+a>w" = "close_window"; "ctrl+a>w" = "close_window";
"ctrl+a>r" = "start_resizing_window";
}; };
font = { font = {
name = "JetBrainsMono Nerd Font Mono"; name = "JetBrainsMono Nerd Font Mono";
@ -46,5 +44,10 @@ in
globinclude kitty.d/**/*.conf globinclude kitty.d/**/*.conf
''; '';
}; };
home.file.".config/kitty" = {
source = ./.;
recursive = true;
};
}; };
} }

View file

@ -11,6 +11,7 @@ in
./modules ./modules
./direnv.nix ./direnv.nix
./config/kitty
./config/ideavim ./config/ideavim
./secrets.nix ./secrets.nix
]; ];

View file

@ -19,8 +19,6 @@ let
in in
{ {
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
profile.home.programs.foot.enable = lib.mkForce true;
home.packages = [ home.packages = [
inputs.hyprland-contrib.packages.${pkgs.system}.grimblast inputs.hyprland-contrib.packages.${pkgs.system}.grimblast
pkgs.wl-clipboard pkgs.wl-clipboard
@ -84,14 +82,13 @@ in
# https://wiki.hyprland.org/Configuring/Binds # https://wiki.hyprland.org/Configuring/Binds
bind = [ bind = [
# Programs # Programs
"$mod, RETURN, exec, foot" "$mod, RETURN, exec, kitty"
"$mod, E, exec, thunar" "$mod, E, exec, thunar"
"$mod, B, exec, microsoft-edge" "$mod, B, exec, microsoft-edge"
"$mod, D, exec, rofi -show drun -replace -i" "$mod, D, exec, rofi -show drun -replace -i"
"$mod, BackSpace, exec, wlogout" "$mod, BackSpace, exec, wlogout"
''$mod, F, exec, ${select-window.path}'' ''$mod, F, exec, ${select-window.path}''
"$mod, W, exec, pypr wall next" "$mod, W, exec, pypr wall next"
"$mod, S, exec, foot ssh homeserver@vpn.tigor.web.id"
# Workspaces # Workspaces
"$mod, 1, workspace, 1" "$mod, 1, workspace, 1"
@ -183,7 +180,7 @@ in
disable_splash_rendering = true; disable_splash_rendering = true;
focus_on_activate = true; focus_on_activate = true;
enable_swallow = true; enable_swallow = true;
swallow_regex = "^(Alacritty|kitty|footclient|org\.wezfurlong\.wezterm|foot|footclient)$"; swallow_regex = "^(Alacritty|kitty|footclient|org\.wezfurlong\.wezterm)$";
}; };
animations = { animations = {

View file

@ -23,8 +23,8 @@ in
]; ];
scratchpads.term = { scratchpads.term = {
animation = "fromTop"; animation = "fromTop";
command = "foot --app-id foot-scratchpad"; command = "kitty --class kitty-dropterm";
class = "foot-scratchpad"; class = "kitty-dropterm";
size = "75% 75%"; size = "75% 75%";
}; };
wallpapers = { wallpapers = {

View file

@ -1,26 +0,0 @@
[colors]
alpha={{ alpha/100 }}
background={{background | strip}}
foreground={{foreground | strip}}
flash={{color2 | strip}}
flash-alpha=0.5
## Normal/regular colors (color palette 0-7)
regular0={{color0 | strip}}
regular1={{color1 | strip}}
regular2={{color2 | strip}}
regular3={{color3 | strip}}
regular4={{color4 | strip}}
regular5={{color5 | strip}}
regular6={{color6 | strip}}
regular7={{color7 | strip}}
## Bright colors (color palette 8-15)
bright0={{color8 | strip}}
bright1={{color9 | strip}}
bright2={{color10 | strip}}
bright3={{color11 | strip}}
bright4={{color12 | strip}}
bright5={{color13 | strip}}
bright6={{color14 | strip}}
bright7={{color15 | strip}}

View file

@ -94,10 +94,6 @@ in
template = "templates/alacritty.toml"; template = "templates/alacritty.toml";
target = out + "/alacritty.toml"; target = out + "/alacritty.toml";
}; };
foot = {
template = "templates/foot.ini";
target = "${config.home.homeDirectory}/.config/foot/colors.ini";
};
}; };
}; };
}; };

View file

@ -6,12 +6,10 @@
./dbeaver.nix ./dbeaver.nix
./discord.nix ./discord.nix
./easyeffects.nix ./easyeffects.nix
./foot.nix
./git.nix ./git.nix
./github.nix ./github.nix
./go.nix ./go.nix
./jellyfin.nix ./jellyfin.nix
./kitty.nix
./microsoft-edge.nix ./microsoft-edge.nix
./mongodb-compass.nix ./mongodb-compass.nix
./mpv.nix ./mpv.nix
@ -28,7 +26,6 @@
./vscode.nix ./vscode.nix
./whatsapp.nix ./whatsapp.nix
./zathura.nix ./zathura.nix
./zellij.nix
./zsh.nix ./zsh.nix
./wezterm ./wezterm

View file

@ -1,20 +0,0 @@
{ config, lib, ... }:
let
cfg = config.profile.home.programs.foot;
in
{
config = lib.mkIf cfg.enable {
programs.foot = {
enable = true;
settings = {
main = {
font = "JetBrainsMono Nerd Font Mono:size=12";
include = lib.mkIf config.profile.hyprland.enable "${config.home.homeDirectory}/.config/foot/colors.ini";
};
mouse = {
hide-when-typing = "yes";
};
};
};
};
}

View file

@ -4,6 +4,10 @@ let
in in
{ {
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
wayland.windowManager.hyprland.settings.bind = [
"$mod, S, exec, wezterm ssh homeserver@vpn.tigor.web.id"
];
programs.wezterm = { programs.wezterm = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View file

@ -1,248 +0,0 @@
{ config, lib, pkgs, ... }:
let
cfg = config.profile.home.programs.zellij;
plugins = {
zj-quit = pkgs.fetchurl {
url = "https://github.com/cristiand391/zj-quit/releases/download/0.3.0/zj-quit.wasm";
hash = "sha256-f1D3cDuLRZ5IqY3IGq6UYSEu1VK54TwmkmwWaxVQD2A=";
};
zstatus = pkgs.fetchurl {
url = "https://github.com/dj95/zjstatus/releases/download/v0.17.0/zjstatus.wasm";
hash = "sha256-IgTfSl24Eap+0zhfiwTvmdVy/dryPxfEF7LhVNVXe+U";
};
};
in
{
config = lib.mkIf cfg.enable {
programs.zellij.enable = true;
# Uses initExtraFirst instead of initExtra
# to avoid loading of zsh plugins before zellij loads.
#
# Let zsh inside zellij that loads zsh plugins.
#
# The lib.mkOrder is used to ensure zellij is
# autoloaded first after zshenv.
programs.zsh.initExtraFirst = lib.mkOrder 50 (
if cfg.autoAttach then
/*bash*/
''
if [[ -z "$ZELLIJ" ]]; then
ZJ_SESSIONS=$(zellij list-sessions --no-formatting)
NO_SESSIONS=$(echo "$ZJ_SESSIONS" | wc -l)
if [ "$NO_SESSIONS" -ge 2 ]; then
SELECTED_SESSION=$(echo "$ZJ_SESSIONS" | ${pkgs.skim}/bin/sk | awk '{print $1}')
if [[ -n "''${SELECTED_SESSION// /}" ]]; then
zellij attach -c "$SELECTED_SESSION"
else
zellij attach -c --index 0
fi
else
zellij attach -c
fi
exit
fi
''
else
/*bash*/ ''
if [[ -z "$ZELLIJ" ]]; then
zellij attach -c default
exit
fi
''
);
home.file.".config/zellij/config.kdl".text = /*kdl*/ ''
theme "catppuccin-mocha";
plugins {
zj-quit location="file:${plugins.zj-quit}";
}
keybinds clear-defaults=true {
shared_except "locked" {
bind "Ctrl q" {
LaunchOrFocusPlugin "zj-quit" {
floating true
};
}
}
normal {
bind "Ctrl a" { SwitchToMode "tmux"; }
}
locked {
bind "Ctrl a" { SwitchToMode "normal"; }
}
tmux {
// Switching modes
bind "Ctrl a" "Ctrl c" "Esc" { SwitchToMode "Normal"; }
bind "w" { SwitchToMode "Resize"; }
bind "e" { SwitchToMode "Scroll"; }
bind "S" { SwitchToMode "Session"; }
bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0; }
bind "R" { SwitchToMode "RenameTab"; TabNameInput 0; }
bind "/" { SwitchToMode "EnterSearch"; SearchInput 0; }
bind "\\" { SwitchToMode "locked"; }
// Pane management
bind "Enter" { NewPane "Right"; SwitchToMode "Normal"; };
bind "Backspace" { NewPane "Down"; SwitchToMode "Normal"; };
bind "q" { CloseFocus; SwitchToMode "Normal"; }
bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
bind "H" { MovePane "Left"; SwitchToMode "Normal"; }
bind "J" { MovePane "Down"; SwitchToMode "Normal"; }
bind "K" { MovePane "Up"; SwitchToMode "Normal"; }
bind "L" { MovePane "Right"; SwitchToMode "Normal"; }
bind "Space" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
// Tab management
bind "t" { NewTab; SwitchToMode "Normal"; }
bind "x" { CloseTab; SwitchToMode "Normal"; }
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
// Session management
bind "s" {
LaunchOrFocusPlugin "session-manager" {
floating true
move_to_focused_tab true
};
SwitchToMode "Normal";
}
}
resize {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
bind "h" "Left" { Resize "Increase Left"; }
bind "j" "Down" { Resize "Increase Down"; }
bind "k" "Up" { Resize "Increase Up"; }
bind "l" "Right" { Resize "Increase Right"; }
bind "H" { Resize "Decrease Left"; }
bind "J" { Resize "Decrease Down"; }
bind "K" { Resize "Decrease Up"; }
bind "L" { Resize "Decrease Right"; }
bind "=" "+" { Resize "Increase"; }
bind "-" { Resize "Decrease"; }
}
search {
bind "/" { SwitchToMode "EnterSearch"; SearchInput 0; }
bind "Ctrl s" { SwitchToMode "Normal"; }
bind "Ctrl c" "Esc" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
bind "n" { Search "down"; }
bind "p" { Search "up"; }
bind "c" { SearchToggleOption "CaseSensitivity"; }
bind "w" { SearchToggleOption "Wrap"; }
bind "o" { SearchToggleOption "WholeWord"; }
}
entersearch {
bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; }
bind "Enter" { SwitchToMode "Search"; }
}
scroll {
bind "Esc" { SwitchToMode "Normal"; }
bind "e" { EditScrollback; SwitchToMode "Normal"; }
bind "/" { SwitchToMode "EnterSearch"; SearchInput 0; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
}
session {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
bind "d" { Detach; }
bind "S" {
LaunchOrFocusPlugin "session-manager" {
floating true
move_to_focused_tab true
};
SwitchToMode "Normal"
}
bind "c" {
LaunchOrFocusPlugin "configuration" {
floating true
move_to_focused_tab true
};
SwitchToMode "Normal"
}
}
renametab {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
// bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
}
renamepane {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
// bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
}
// Unused modes is only given escape keys to return to normal mode.
pane {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
}
move {
bind "Ctrl c" "Esc" { SwitchToMode "Normal"; }
}
}
'';
home.file.".config/zellij/layouts/default.kdl".text = /*kdl*/ ''
layout {
pane split_direction="vertical" {
pane
}
pane size=1 borderless=true {
plugin location="file:${plugins.zstatus}" {
format_left "{mode}#[fg=black,bg=blue,bold]{session} #[fg=blue,bg=#181825]{tabs}"
format_right "#[fg=#181825,bg=#b1bbfa]{datetime}"
format_space "#[bg=#181825]"
hide_frame_for_single_pane "true"
mode_normal "#[bg=blue] "
tab_normal "#[fg=#181825,bg=#4C4C59] #[fg=#000000,bg=#4C4C59]{index} {name} #[fg=#4C4C59,bg=#181825]"
tab_normal_fullscreen "#[fg=#6C7086,bg=#181825] {index} {name} [] "
tab_normal_sync "#[fg=#6C7086,bg=#181825] {index} {name} <> "
tab_active "#[fg=#181825,bg=#ffffff,bold,italic] {index} {name} #[fg=#ffffff,bg=#181825]"
tab_active_fullscreen "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} [] "
tab_active_sync "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} <> "
datetime "#[fg=#6C7086,bg=#b1bbfa,bold] {format} "
datetime_format "%A, %d %b %Y %H:%M"
datetime_timezone "Europe/Berlin"
}
}
}
'';
};
}

View file

@ -89,10 +89,6 @@ in
find $(nix build "nixpkgs#$1" --no-link --print-out-paths) find $(nix build "nixpkgs#$1" --no-link --print-out-paths)
} }
build() {
nix build --impure --expr "with import <nixpkgs> {}; callPackage $1 {}"
}
# Completion settings # Completion settings
## Case insensitive completion ## Case insensitive completion
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'

View file

@ -14,7 +14,6 @@ in
qbittorrent.enable = lib.mkEnableOption "qbittorrent podman"; qbittorrent.enable = lib.mkEnableOption "qbittorrent podman";
openobserve.enable = lib.mkEnableOption "openobserve podman"; openobserve.enable = lib.mkEnableOption "openobserve podman";
minecraft.enable = mkEnableOption "minecraft server podman"; minecraft.enable = mkEnableOption "minecraft server podman";
memos.enable = mkEnableOption "memos podman";
servarr = { servarr = {
enable = mkEnableOption "servarr group"; enable = mkEnableOption "servarr group";

View file

@ -74,23 +74,6 @@
home.programs = { home.programs = {
zathura.enable = lib.mkEnableOption "zathura"; zathura.enable = lib.mkEnableOption "zathura";
floorp.enable = lib.mkEnableOption "floorp"; floorp.enable = lib.mkEnableOption "floorp";
zellij = {
enable = lib.mkEnableOption "zellij";
# Wether to enable auto attach to zellij sessions.
#
# Best used for servers when you want to auto attach to a session when ssh
# into a server.
#
# Desktop usage is not recommended since uses typically have multiple
# terminal windows open and it can be confusing to have a terminal
# window auto attach to a zellij session.
#
# Also, there is resurrections features that zellij offers.
# So desktop user can just resurrect the session if they want to.
autoAttach = lib.mkEnableOption "zellij autoAttach";
};
foot.enable = lib.mkEnableOption "foot";
}; };
programs = { programs = {

View file

@ -83,6 +83,5 @@ in
}; };
programs.easyeffects.enable = true; programs.easyeffects.enable = true;
programs.wezterm.enable = true; programs.wezterm.enable = true;
home.programs.zellij.enable = true;
}; };
} }

View file

@ -69,9 +69,5 @@
programs.mongodb-compass.enable = true; programs.mongodb-compass.enable = true;
podman.enable = true; podman.enable = true;
home.programs.foot.enable = true;
home.programs.zellij.enable = true;
}; };
} }

View file

@ -38,18 +38,12 @@
servarr.rdtclient.enable = true; servarr.rdtclient.enable = true;
openobserve.enable = true; openobserve.enable = true;
minecraft.enable = true; minecraft.enable = true;
memos.enable = true;
}; };
docker = { docker = {
enable = false; enable = false;
}; };
home.programs.zellij = {
enable = true;
autoAttach = true;
};
services = { services = {
caddy.enable = true; caddy.enable = true;
cockpit.enable = true; cockpit.enable = true;

View file

@ -0,0 +1,21 @@
router: ENC[AES256_GCM,data:AulD1VVGGYhEEnHEr8TSYLfMyA14BfTUF3QKxlKpbH7G5Eo/CGZaTSQYBzehgmNZKVAZAG1Efe60aSNhlk1ZlGxMnODGw1wV/dAnuTrqd7ixEE/hz9hO1qr1daWRmb73jQpw3XmFeAHBl4XnLIhdLFNXKEcgZBJ7piw5ZXDpG5EhaUrPhKpRMQb+yPkA9eBTI023iFOiJ8du1TF0RuqTUExUSCkcVaNgpn0pwd5tgnM/gAg7SJ0MGNRPaVL0Bq2S5e6SSO90mFcXPEQDk/1jy3Ml7ZFFQ9GrN612X3j2lYLKcwfBH5327pU=,iv:UBxOzdVt8Nof+I/H2wY0Tng8rrKZyt3fPRVLzygxIuo=,tag:TIWvIFy2QGkP1qMlnnMlbQ==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1kruum2varzua7w5n6n52vhwyek2arc685rhcwt0u7k2jf5mecsjslkl9ll
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBhK1lrMkJlNmJwK3ZvSjhz
VnFQa2xMdEt0dU9pRlQxbWZIT09ObVI2cUNBCkx2UnBQOTFRYkhXR0pyWGgxdVIr
R3NvZDBTU3lIY3RHZkxKRDQzRWhmYUUKLS0tIDJtNFc2VzRNQVdxZ0kxME91Um9p
OTBPaGdUZ1ZueUlKMVlhOHBreFV6OVEKBhcqTTA9Vufnn/WAhR5zb08Nsn48zmD2
+bdJf+0B68Z57Q/47fNjvXclqLdDCWToTlIjOTnzVH2oXOWKQQxj6g==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-06-13T13:48:11Z"
mac: ENC[AES256_GCM,data:LjWV/1NPeN58VHH/lgHTukHHDu0zfqCCLeFoVS4yN91IkjdvvqwvTD74GDigw7lm++6LWILjF0zIlryUHJKg4T+Xztsj/kRntVuhSTXsDUU9mu/AOCLu5P7k4fn+N9rAMh5ML9ukeU+ZxTaOHLfezYMLv2c+01B1iMfjZ2qJ9Q4=,iv:Dh4WG98sfRUrTYnbfrZt0gX0co8lI8DUpdxFMy165GI=,tag:9Nn9UcKijyu6RhUjiUDd4g==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.8.1

View file

@ -3,9 +3,6 @@
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
networking.extraHosts = '' networking.extraHosts = ''
192.168.50.217 gitlab.bareksa.com 192.168.50.217 gitlab.bareksa.com
192.168.50.205 tools.bareksa.local
192.168.3.50 kafka.dev.bareksa.local
192.168.3.109 redpanda.dev.bareksa.local kafka-console.dev.bareksa.local
''; '';
networking.firewall = networking.firewall =
let let

View file

@ -41,7 +41,6 @@ in
# 10.88.0.6 -> Suwayomi Flaresolverr # 10.88.0.6 -> Suwayomi Flaresolverr
# 10.88.1.1 -> Pihole # 10.88.1.1 -> Pihole
imports = [ imports = [
./memos.nix
./minecraft.nix ./minecraft.nix
./openobserve.nix ./openobserve.nix
./pihole.nix ./pihole.nix

View file

@ -1,47 +0,0 @@
{ config, lib, ... }:
let
name = "memos";
podman = config.profile.podman;
inherit (lib) mkIf;
ip = "10.88.88.1";
image = "docker.io/neosmemo/memos:stable";
rootVolume = "/nas/podman/memos";
domain = "${name}.tigor.web.id";
user = config.profile.user;
uid = toString user.uid;
gid = toString user.gid;
in
{
config = mkIf (podman.enable && podman.${name}.enable) {
services.caddy.virtualHosts.${domain}.extraConfig = ''
reverse_proxy ${ip}:5230
'';
system.activationScripts."podman-${name}" = ''
mkdir -p ${rootVolume}
chown ${uid}:${gid} ${rootVolume}
'';
virtualisation.oci-containers.containers.${name} = {
inherit image;
hostname = name;
autoStart = true;
user = "${uid}:${gid}";
environment = {
TZ = "Asia/Jakarta";
# MEMOS_PUBLIC = "true";
};
volumes = [
"${rootVolume}:/var/opt/memos"
];
extraOptions = [
"--network=podman"
"--ip=${ip}"
];
labels = {
"io.containers.autoupdate" = "registry";
};
};
};
}

View file

@ -16,10 +16,6 @@ let
username = "CrowFX7414"; username = "CrowFX7414";
xuid = "2533274941938385"; xuid = "2533274941938385";
} }
{
username = "cherlyxroblox";
xuid = "2535436320975546";
}
]; ];
in in
{ {

View file

@ -43,9 +43,7 @@ in
let let
inherit (lib) strings attrsets; inherit (lib) strings attrsets;
in in
'' ''${strings.concatStringsSep "\n" (
192.168.100.5 vpn.tigor.web.id
${strings.concatStringsSep "\n" (
attrsets.mapAttrsToList (name: _: "192.168.100.5 ${strings.removePrefix "https://" name}") config.services.caddy.virtualHosts attrsets.mapAttrsToList (name: _: "192.168.100.5 ${strings.removePrefix "https://" name}") config.services.caddy.virtualHosts
)} )}
''; '';

View file

@ -7,14 +7,15 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.caddy = { services.caddy = {
enable = true; enable = true;
}; extraConfig = ''
import /etc/caddy/sites-enabled/*
services.caddy.virtualHosts."router.tigor.web.id".extraConfig = ''
@denied not remote_ip private_ranges
respond @denied "Access denied" 403
reverse_proxy 192.168.100.1
''; '';
}; };
sops.secrets."router" = {
sopsFile = ../../secrets/caddy_reverse_proxy.yaml;
path = "/etc/caddy/sites-enabled/router";
mode = "0444";
};
};
} }

View file

@ -8,11 +8,7 @@ in
environment.systemPackages = mkIf config.profile.podman.enable [ environment.systemPackages = mkIf config.profile.podman.enable [
(pkgs.callPackage ../packages/cockpit-podman.nix { }) (pkgs.callPackage ../packages/cockpit-podman.nix { })
]; ];
services.caddy.virtualHosts."cockpit.tigor.web.id".extraConfig = /*caddyfile*/ '' services.caddy.virtualHosts."cockpit.tigor.web.id".extraConfig = ''
@denied not remote_ip private_ranges
respond @denied "Access denied" 403
reverse_proxy 0.0.0.0:9090 reverse_proxy 0.0.0.0:9090
''; '';
services.udisks2.enable = true; services.udisks2.enable = true;

View file

@ -124,15 +124,6 @@ in
"living-room-system" "living-room-system"
]; ];
}; };
"/nas/Syncthing/Sync/sops" = {
label = "Sops";
id = "Sops";
devices = [
"s20fe"
"work-laptop"
"windows"
];
};
}; };
devices = { devices = {
s20fe = { s20fe = {