Compare commits

...

7 commits

8 changed files with 191 additions and 120 deletions

View file

@ -116,11 +116,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1717285511, "lastModified": 1719994518,
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", "narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", "rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -306,11 +306,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719827439, "lastModified": 1720327769,
"narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=", "narHash": "sha256-kAsg3Lg4YKKpGw+f1W2s5hzjP8B0y/juowvjK8utIag=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "59ce796b2563e19821361abbe2067c3bb4143a7d", "rev": "6b7ce96f34b324e4e104abc30d06955d216bac71",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -391,11 +391,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719454904, "lastModified": 1720059538,
"narHash": "sha256-/p5EdN8b8XxOihdqw6bTh5zsVR8iecdDB7qXo/jRy+4=", "narHash": "sha256-6CTyQ37ywENn59pVEVuYh2HFpX11RcMil8OaGKuoo90=",
"owner": "nixpak", "owner": "nixpak",
"repo": "nixpak", "repo": "nixpak",
"rev": "02483947c304279c6861fcd15df9aee8859a5a7b", "rev": "196d621ef861d285a1e5407ef7ee723e60e2b28c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -432,11 +432,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1719690277, "lastModified": 1720031269,
"narHash": "sha256-0xSej1g7eP2kaUF+JQp8jdyNmpmCJKRpO12mKl/36Kc=", "narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2741b4b489b55df32afac57bc4bfd220e8bf617e", "rev": "9f4128e00b0ae8ec65918efeba59db998750ead6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -671,11 +671,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719775374, "lastModified": 1720339391,
"narHash": "sha256-sKs30zEMd2zFGnfbV4WuRZsYveI/fuD14cyOnb0qyi0=", "narHash": "sha256-IHlZ1sUQzTJATSt8zw8CFXdQoZOBTvfSG9d9erOjS04=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "walker", "repo": "walker",
"rev": "cd97cbc2ca87b484fb4ce0d426e21770342e9f68", "rev": "bf9bc52b328ce201c536ecff5d8542ba2232f603",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -10,5 +10,6 @@ _: {
./stremio.nix ./stremio.nix
./qbittorrent.nix ./qbittorrent.nix
./qalculate-gtk.nix ./qalculate-gtk.nix
./virtualbox.nix
]; ];
} }

View file

@ -0,0 +1,16 @@
{
lib,
pkgs,
osConfig,
...
}: let
inherit (lib) mkIf;
cfg = osConfig.myOptions.home-manager.programs.applications.virtualbox;
in {
config = mkIf cfg.enable {
home.packages = with pkgs; [
virtualbox
];
};
}

View file

@ -1,97 +0,0 @@
{
"placeholder": "Search...",
"keep_open": false,
"ignore_mouse": false,
"ssh_host_file": "",
"enable_typeahead": false,
"show_initial_entries": true,
"fullscreen": false,
"scrollbar_policy": "automatic",
"hyprland": {
"context_aware_history": false
},
"activation_mode": {
"disabled": false,
"use_f_keys": false,
"use_alt": false
},
"search": {
"delay": 0,
"hide_icons": false,
"margin_spinner": 10,
"hide_spinner": false
},
"runner": {
"excludes": [
"rm"
]
},
"clipboard": {
"max_entries": 10,
"image_height": 300
},
"align": {
"ignore_exlusive": true,
"width": 400,
"horizontal": "center",
"vertical": "start",
"anchors": {
"top": false,
"left": false,
"bottom": false,
"right": false
},
"margins": {
"top": 20,
"bottom": 0,
"end": 0,
"start": 0
}
},
"list": {
"height": 300,
"margin_top": 10,
"always_show": true,
"hide_sub": false
},
"orientation": "vertical",
"icons": {
"theme": "",
"hide": false,
"size": 28,
"image_height": 200
},
"modules": [
{
"name": "runner",
"prefix": ""
},
{
"name": "applications",
"prefix": ""
},
{
"name": "ssh",
"prefix": "",
"switcher_exclusive": true
},
{
"name": "finder",
"prefix": "",
"switcher_exclusive": true
},
{
"name": "commands",
"prefix": "",
"switcher_exclusive": true
},
{
"name": "websearch",
"prefix": "?"
},
{
"name": "switcher",
"prefix": "/"
}
]
}

View file

@ -1,7 +1,7 @@
{ {
inputs, inputs,
config,
osConfig, osConfig,
pkgs,
lib, lib,
... ...
}: let }: let
@ -14,7 +14,140 @@ in {
enable = true; enable = true;
runAsService = true; # makes walker a lot faster when starting runAsService = true; # makes walker a lot faster when starting
config = builtins.fromJSON (builtins.readFile ./config.json); config = {
placeholder = "Search...";
ignore_mouse = false;
terminal = "kitty";
shell_config = "${config.xdg.configHome}/zsh/.zshrc";
ssh_host_file = "${config.home.homeDirectory}/.ssh/known_hosts";
enable_typeahead = false;
show_initial_entries = true;
fullscreen = false;
scrollbar_policy = "automatic";
websearch = {
engines = ["google" "duckduckgo"];
};
hyprland = {
context_aware_history = false;
};
applications = {
enable_cache = false; # disabling doesn't cause slowdowns, and allows picking up new apps automatically
};
# Mode for picking the entry with keyboard using labels
# defaults to ctrl+<entry label>
activation_mode = {
disabled = false;
use_f_keys = false; # F-keys instead of letters for labels
use_alt = false; # use alt instead of ctrl to enter activation mode
};
search = {
delay = 0; # debounce delay (until src/cmd is ran) in ms
hide_icons = false;
margin_spinner = 10; # margin of the spinner in px
hide_spinner = false;
};
runner = {
excludes = ["rm"]; # commands to be excluded from the runner
};
clipboard = {
max_entries = 10;
image_height = 300;
};
align = {
ignore_exclusive = true;
width = 400;
horizontal = "center";
vertical = "start";
anchors = {
top = false;
left = false;
bottom = false;
right = false;
};
margins = {
top = 20;
bottom = 0;
end = 0;
start = 0;
};
};
list = {
height = 300;
width = 100;
margin_top = 10;
always_show = true;
hide_sub = false;
fixed_height = false;
};
orientation = "vertical";
icons = {
theme = ""; # GTK Icon theme (default)
hide = false;
size = 28;
image_height = 200;
};
# Built-in modules
modules = [
# Module switcher
{
name = "switcher";
prefix = "/";
}
# Default modules (always listed)
{
name = "runner";
prefix = "";
}
{
name = "applications";
prefix = "";
}
# Prefix modules
{
name = "hyprland";
prefix = "#";
}
{
name = "clipboard";
prefix = ">";
}
# Switcher exclusive modules (must be chosen)
{
name = "commands"; # walker commands
prefix = "";
switcher_exclusive = true;
}
{
name = "ssh";
prefix = "";
switcher_exclusive = true;
}
{
name = "websearch"; # uses google
prefix = "";
switcher_exclusive = true;
}
];
# Custom modules
external = [
{
name = "Home directory explorer";
prefix = "~";
src = "fd --base-directory ~ %TERM%";
cmd = "xdg-open file://%RESULT%";
}
{
name = "DDG search";
prefix = "?";
src = "jq -sRr '@uri'";
cmd = "xdg-open https://duckduckgo.com/?t=h_&q=%RESULT%&ia=web";
}
];
};
style = builtins.readFile ./style.css; style = builtins.readFile ./style.css;
}; };
}; };

View file

@ -65,6 +65,8 @@
".local/share/Smart Code ltd/Stremio" ".local/share/Smart Code ltd/Stremio"
".config/obs-studio" ".config/obs-studio"
".local/share/PrismLauncher" ".local/share/PrismLauncher"
".config/VirtualBox"
".local/share/VirtulBox VMs"
# Tools # Tools
".ssh" ".ssh"
@ -210,6 +212,7 @@
}; };
}; };
qalculate-gtk.enable = true; qalculate-gtk.enable = true;
virtualbox.enable = true;
}; };
file-managers = { file-managers = {
pcmanfm-qt.enable = true; pcmanfm-qt.enable = true;

View file

@ -47,6 +47,7 @@ in
obs.enable = mkEnableOption "OBS (Free and oepn source software for video recording and live streaming)"; obs.enable = mkEnableOption "OBS (Free and oepn source software for video recording and live streaming)";
mpv.enable = mkEnableOption "MPV (General-purpose media player)"; mpv.enable = mkEnableOption "MPV (General-purpose media player)";
qalculate-gtk.enable = mkEnableOption "qalculate-gtk (The ultimate desktop calculator)"; qalculate-gtk.enable = mkEnableOption "qalculate-gtk (The ultimate desktop calculator)";
virtualbox.enable = mkEnableOption "VirtualBox";
}; };
file-managers = { file-managers = {

View file

@ -22,13 +22,27 @@ in
vulkan-extension-layer vulkan-extension-layer
]; ];
# Enable OpenGL hardware = {
hardware.graphics = { graphics = {
enable = true; enable = true;
# Enable OpenCL and AMDVLK extraPackages = with pkgs; [
extraPackages = with pkgs; [ amdvlk ]; # Enable AMDVLK (AMD's open-source Vulkan driver)
amdvlk
# OpenCL (Universal GPU computing API - not AMD specific)
# To check if this works, run: `nix run nixpkgs#clinfo` (after rebooting)
rocmPackages.clr.icd
];
# AMDVLK for 32-bit applications
extraPackages32 = with pkgs; [ driversi686Linux.amdvlk ]; extraPackages32 = with pkgs; [ driversi686Linux.amdvlk ];
}; };
}; };
# HIP (SDK that allows running CUDA code on AMD GPUs)
# Most software has the paths hard-coded
systemd.tmpfiles.rules = [
"L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"
];
};
} }