3a146f39b7
- Standardized apps/ directory by renaming all entry points (e.g., home.nix) to default.nix and updating imports to use directory paths. - Consolidated system/ logic into modules/system/, eliminating the top-level system/ directory and redundant wrappers. - Merged subsidiary utility scripts (e.g., hakase-popup.nix, switch-wallpaper.nix) into their parent default.nix files for better cohesion. - Cleaned up unused files and updated all module references to reflect the new structure.
574 lines
14 KiB
Nix
574 lines
14 KiB
Nix
{
|
|
inputs,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
imports = [
|
|
# ./style.nix
|
|
./layout.nix
|
|
];
|
|
|
|
programs.walker = {
|
|
enable = true;
|
|
runAsService = true;
|
|
package = inputs.walker.packages.${pkgs.system}.default;
|
|
|
|
# CSS Implementation using Stylix Colors
|
|
config = {
|
|
# General Settings
|
|
force_keyboard_focus = true;
|
|
close_when_open = true;
|
|
click_to_close = true;
|
|
single_click_activation = true;
|
|
selection_wrap = true;
|
|
global_argument_delimiter = "#";
|
|
exact_search_prefix = "'";
|
|
# theme = "default";
|
|
disable_mouse = false;
|
|
debug = false;
|
|
page_jump_items = 10;
|
|
hide_quick_activation = true;
|
|
hide_action_hints = true;
|
|
hide_action_hints_dmenu = true;
|
|
hide_return_action = false;
|
|
resume_last_query = false;
|
|
actions_as_menu = false;
|
|
|
|
# Shell positioning
|
|
shell = {
|
|
anchor_top = true;
|
|
anchor_bottom = true;
|
|
anchor_left = true;
|
|
anchor_right = true;
|
|
};
|
|
|
|
# Column config
|
|
columns.symbols = 3;
|
|
|
|
# Placeholders
|
|
placeholders.default = {
|
|
input = "Search";
|
|
list = "No Results";
|
|
};
|
|
|
|
# Keybinds
|
|
keybinds = {
|
|
close = ["Escape"];
|
|
next = ["Down"];
|
|
previous = ["Up"];
|
|
left = ["Left"];
|
|
right = ["Right"];
|
|
down = ["Down"];
|
|
up = ["Up"];
|
|
toggle_exact = ["ctrl e"];
|
|
resume_last_query = ["ctrl r"];
|
|
quick_activate = ["F1" "F2" "F3" "F4"];
|
|
page_down = ["Page_Down"];
|
|
page_up = ["Page_Up"];
|
|
show_actions = ["alt j"];
|
|
};
|
|
|
|
# Providers General
|
|
providers = {
|
|
default = ["desktopapplications" "calc" "websearch"];
|
|
empty = ["desktopapplications"];
|
|
ignore_preview = [];
|
|
max_results = 50;
|
|
|
|
argument_delimiter.runner = " ";
|
|
|
|
clipboard.time_format = "%d.%m. - %H:%M";
|
|
|
|
# Provider Prefixes
|
|
prefixes = [
|
|
{
|
|
prefix = ";";
|
|
provider = "providerlist";
|
|
}
|
|
{
|
|
prefix = ">";
|
|
provider = "runner";
|
|
}
|
|
{
|
|
prefix = "/";
|
|
provider = "files";
|
|
}
|
|
{
|
|
prefix = ".";
|
|
provider = "symbols";
|
|
}
|
|
{
|
|
prefix = "!";
|
|
provider = "todo";
|
|
}
|
|
{
|
|
prefix = "%";
|
|
provider = "bookmarks";
|
|
}
|
|
{
|
|
prefix = "=";
|
|
provider = "calc";
|
|
}
|
|
{
|
|
prefix = "@";
|
|
provider = "websearch";
|
|
}
|
|
{
|
|
prefix = ":";
|
|
provider = "clipboard";
|
|
}
|
|
{
|
|
prefix = "$";
|
|
provider = "windows";
|
|
}
|
|
];
|
|
|
|
# Actions
|
|
actions = {
|
|
fallback = [
|
|
{
|
|
action = "menus:open";
|
|
label = "open";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "menus:default";
|
|
label = "run";
|
|
after = "Close";
|
|
}
|
|
{
|
|
action = "menus:parent";
|
|
label = "back";
|
|
bind = "Escape";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "erase_history";
|
|
label = "clear hist";
|
|
bind = "ctrl h";
|
|
after = "AsyncReload";
|
|
}
|
|
];
|
|
dmenu = [
|
|
{
|
|
action = "select";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
];
|
|
providerlist = [
|
|
{
|
|
action = "activate";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "ClearReload";
|
|
}
|
|
];
|
|
bluetooth = [
|
|
{
|
|
action = "find";
|
|
bind = "ctrl f";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "remove";
|
|
bind = "ctrl d";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "trust";
|
|
bind = "ctrl t";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "untrust";
|
|
bind = "ctrl t";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "pair";
|
|
bind = "Return";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "connect";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "disconnect";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "AsyncReload";
|
|
}
|
|
];
|
|
archlinuxpkgs = [
|
|
{
|
|
action = "install";
|
|
bind = "Return";
|
|
default = true;
|
|
}
|
|
{
|
|
action = "remove";
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "show_all";
|
|
label = "show all";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "refresh";
|
|
label = "refresh";
|
|
bind = "ctrl r";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "visit_url";
|
|
label = "open URL";
|
|
bind = "ctrl o";
|
|
}
|
|
{
|
|
action = "show_installed";
|
|
label = "show installed";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
];
|
|
calc = [
|
|
{
|
|
action = "copy";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "delete";
|
|
bind = "ctrl d";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "save";
|
|
bind = "ctrl s";
|
|
after = "AsyncClearReload";
|
|
}
|
|
];
|
|
websearch = [
|
|
{
|
|
action = "search";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "open_url";
|
|
label = "open url";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
];
|
|
desktopapplications = [
|
|
{
|
|
action = "start";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "start:keep";
|
|
label = "open+next";
|
|
bind = "shift Return";
|
|
after = "KeepOpen";
|
|
}
|
|
{
|
|
action = "new_instance";
|
|
label = "new instance";
|
|
bind = "ctrl Return";
|
|
}
|
|
{
|
|
action = "new_instance:keep";
|
|
label = "new+next";
|
|
bind = "ctrl alt Return";
|
|
after = "KeepOpen";
|
|
}
|
|
{
|
|
action = "pin";
|
|
bind = "ctrl p";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "unpin";
|
|
bind = "ctrl p";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "pinup";
|
|
bind = "ctrl n";
|
|
after = "AsyncReload";
|
|
}
|
|
{
|
|
action = "pindown";
|
|
bind = "ctrl m";
|
|
after = "AsyncReload";
|
|
}
|
|
];
|
|
files = [
|
|
{
|
|
action = "open";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "opendir";
|
|
label = "open dir";
|
|
bind = "ctrl Return";
|
|
}
|
|
{
|
|
action = "copypath";
|
|
label = "copy path";
|
|
bind = "ctrl shift c";
|
|
}
|
|
{
|
|
action = "copyfile";
|
|
label = "copy file";
|
|
bind = "ctrl c";
|
|
}
|
|
{
|
|
action = "localsend";
|
|
label = "localsend";
|
|
bind = "ctrl l";
|
|
}
|
|
{
|
|
action = "refresh_index";
|
|
label = "reload";
|
|
bind = "ctrl r";
|
|
after = "AsyncReload";
|
|
}
|
|
];
|
|
# Note: "1password" key starts with a digit, must be quoted in Nix
|
|
"1password" = [
|
|
{
|
|
action = "copy_password";
|
|
label = "copy password";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "copy_username";
|
|
label = "copy username";
|
|
bind = "shift Return";
|
|
}
|
|
{
|
|
action = "copy_2fa";
|
|
label = "copy 2fa";
|
|
bind = "ctrl Return";
|
|
}
|
|
];
|
|
todo = [
|
|
{
|
|
action = "save";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "save_next";
|
|
label = "save & new";
|
|
bind = "shift Return";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "delete";
|
|
bind = "ctrl d";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "active";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "inactive";
|
|
default = true;
|
|
bind = "Return";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "done";
|
|
bind = "ctrl f";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "change_category";
|
|
bind = "ctrl y";
|
|
label = "change category";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "clear";
|
|
bind = "ctrl x";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "create";
|
|
bind = "ctrl a";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "search";
|
|
bind = "ctrl a";
|
|
after = "AsyncClearReload";
|
|
}
|
|
];
|
|
runner = [
|
|
{
|
|
action = "run";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "runterminal";
|
|
label = "run in terminal";
|
|
bind = "shift Return";
|
|
}
|
|
];
|
|
symbols = [
|
|
{
|
|
action = "copy";
|
|
label = "select";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
];
|
|
unicode = [
|
|
{
|
|
action = "copy";
|
|
label = "select";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
];
|
|
nirisessions = [
|
|
{
|
|
action = "start";
|
|
label = "start";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "start_new";
|
|
label = "start blank";
|
|
bind = "ctrl Return";
|
|
}
|
|
];
|
|
clipboard = [
|
|
{
|
|
action = "copy";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "remove";
|
|
bind = "ctrl d";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "remove_all";
|
|
label = "clear";
|
|
bind = "ctrl shift d";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "show_images_only";
|
|
label = "only images";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "show_text_only";
|
|
label = "only text";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "show_combined";
|
|
label = "show all";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "pause";
|
|
bind = "ctrl p";
|
|
}
|
|
{
|
|
action = "unpause";
|
|
bind = "ctrl p";
|
|
}
|
|
{
|
|
action = "edit";
|
|
bind = "ctrl o";
|
|
}
|
|
{
|
|
action = "localsend";
|
|
bind = "ctrl l";
|
|
}
|
|
];
|
|
bookmarks = [
|
|
{
|
|
action = "save";
|
|
bind = "Return";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "open";
|
|
default = true;
|
|
bind = "Return";
|
|
}
|
|
{
|
|
action = "delete";
|
|
bind = "ctrl d";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "change_category";
|
|
label = "Change category";
|
|
bind = "ctrl y";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "change_browser";
|
|
label = "Change browser";
|
|
bind = "ctrl b";
|
|
after = "Nothing";
|
|
}
|
|
{
|
|
action = "import";
|
|
label = "Import";
|
|
bind = "ctrl i";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "create";
|
|
bind = "ctrl a";
|
|
after = "AsyncClearReload";
|
|
}
|
|
{
|
|
action = "search";
|
|
bind = "ctrl a";
|
|
after = "AsyncClearReload";
|
|
}
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
home.file.".config/elephant/websearch.toml".text = ''
|
|
[[entries]]
|
|
name = "DuckDuckGo"
|
|
url = "https://duckduckgo.com/?q=%TERM%"
|
|
default = true
|
|
'';
|
|
}
|