refactor: cleaned up nixos and home dirs

This commit is contained in:
Nick 2025-02-06 00:51:06 -06:00
parent 2000adb56a
commit 824a91d405
643 changed files with 323 additions and 195 deletions

181
modules/home/default.nix Executable file
View file

@ -0,0 +1,181 @@
{ config, ... }:
let
collectDirs =
path:
let
content = builtins.readDir path;
subdirs = builtins.filter (name: content.${name} == "directory") (builtins.attrNames content);
buildPath = name: path + "/${name}";
thisDirs = map buildPath subdirs;
subDirs = builtins.concatMap collectDirs thisDirs;
in
[ path ] ++ subDirs;
directoryImport =
path:
builtins.listToAttrs (
map (dir: {
name = baseNameOf (toString dir);
value = import dir;
}) (collectDirs path)
);
modules = directoryImport ./.;
in
{
flake.homeModules =
let
inherit (config.machines.devices)
bartholomew
desktop
fallaryn
laptop
server
;
inherit (config.people) user0 user1 user2;
in
{
"${desktop.name}-${user0}" = {
imports = builtins.attrValues {
inherit (modules)
cli
brave
emulators
firefox
tor
code
gaming
media
messaging
sharing
tools
hypr
wayland
theming
;
};
};
"${desktop.name}-${user1}" = {
imports = builtins.attrValues {
inherit (modules)
cli
brave
ghostty
zed
gaming
spotify
docs
mpv
kolourPaint
discord
signal
scrcpy
bitwarden
emote
desktop
;
};
};
"${fallaryn.name}-${user2}" = {
imports = builtins.attrValues {
inherit (modules)
cli
brave
firefoxNix
braveNix
code
ghostty
gaming
spotify
audioProduction
wpsOffice
obsidian
okular
images
modeling
obsStudio
kdenlive
videoPlaying
discord
signal
tdesktop
teams
whatsApp
zoom
tools
;
};
};
"${laptop.name}-${user0}" = {
imports = builtins.attrValues {
inherit (modules)
cli
brave
emulators
firefox
tor
code
gaming
media
messaging
sharing
tools
;
};
};
"${laptop.name}-${user1}" = {
imports = builtins.attrValues {
inherit (modules)
cli
brave
ghostty
zed
gaming
spotify
docs
mpv
kolourPaint
discord
signal
scrcpy
bitwarden
emote
desktop
;
};
};
"${bartholomew.name}-${user1}" = {
imports = builtins.attrValues {
inherit (modules)
cli
catppuccin
gtk
brave
ghostty
zed
gaming
spotify
docs
mpv
jellyfin
kolourPaint
discord
signal
scrcpy
bitwarden
emote
desktop
;
};
};
"${server.name}-${user0}" = {
imports = builtins.attrValues {
inherit (modules)
cli
tooling
;
};
};
};
}

View file

@ -0,0 +1,12 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
android-file-transfer
;
};
}
# requires that users be part of the adbusers group

View file

@ -0,0 +1,12 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
android-tools
;
};
}
# requires that users be part of the adbusers group

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
simple-mtpfs
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,44 @@
{
language = [
{
auto-format = true;
formatter.command = "nixfmt";
name = "nix";
}
{
auto-format = true;
formatter.command = "cssfmt";
name = "css";
}
{
auto-format = true;
language-servers = [
"elm-language-server"
];
name = "elm";
}
{
auto-format = true;
formatter.command = "haskell";
name = "haskell";
}
{
auto-format = true;
formatter.command = "yamlfmt";
name = "yaml";
}
{
auto-format = true;
formatter.command = "yuck";
name = "yuck";
}
];
language-server = {
elm-language-server = {
config.elmLS = {
disableElmLSDiagnostics = true;
elmReviewDiagnostics = "warning";
};
};
};
}

View file

@ -0,0 +1,62 @@
{
editor = {
mouse = true;
auto-format = true;
soft-wrap.enable = true;
auto-save = true;
line-number = "relative";
cursorline = true;
indent-guides = {
character = "";
skip-levels = 1;
render = true;
};
lsp = {
display-messages = true;
display-inlay-hints = true;
};
};
keys = {
normal = {
f = ":format";
tab = "indent";
S-tab = "unindent";
ret = [
"add_newline_below"
"move_line_down"
];
S-ret = [
"add_newline_above"
"move_line_up"
];
S-up = [
"extend_to_line_bounds"
"delete_selection"
"move_line_up"
"paste_before"
];
S-down = [
"extend_to_line_bounds"
"delete_selection"
"paste_after"
];
S-g = [
":write-all"
":new"
":insert-output lazygit"
":buffer-close!"
":redraw"
":reload-all"
];
Y = "yank_main_selection_to_primary_clipboard";
R = "replace_selections_with_primary_clipboard";
space = {
q = ":q";
w = ":w";
};
};
};
theme = "catppuccin_macchiato";
}

View file

@ -0,0 +1,19 @@
{
pkgs,
flake,
...
}:
{
programs.helix =
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix);
languagesPath = import (configPath + /languages.nix);
in
{
enable = true;
package = flake.inputs.helix.packages.${pkgs.system}.default;
languages = languagesPath;
settings = settingsPath;
};
}

View file

@ -0,0 +1,3 @@
{
programs.neovim.enable = true;
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,16 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs.elmPackages)
elm
elm-format
elm-land
elm-language-server
elm-review
elm-test
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs.nodePackages)
nodejs
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,16 @@
{
config,
flake,
...
}:
let
user = config.home.username;
userConfig = flake.config.people.users.${user};
in
{
programs.git = {
enable = true;
userName = userConfig.name;
userEmail = userConfig.email.address0;
};
}

View file

@ -0,0 +1,7 @@
{
programs.lazygit = {
enable = true;
settings = {
};
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
file-roller
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
ncdu
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
samba
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
unrar
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
unzip
;
};
}

View file

@ -0,0 +1,16 @@
{
keymap.manager.prepend_keymap = [
{
on = [
"Q"
];
run = "quit";
}
{
on = [
"q"
];
run = "quit --no-cwd-file";
}
];
}

View file

@ -0,0 +1,18 @@
{
settings = {
log = {
enabled = false;
};
manager = {
show_hidden = true;
sort_by = "alphabetical";
sort_dir_first = true;
sort_reverse = false;
};
preview = {
tab_size = 2;
max_width = 1500;
max_height = 1000;
};
};
}

View file

@ -0,0 +1,22 @@
{
flake,
pkgs,
...
}:
{
programs.yazi =
let
configPath = ./config;
keymapPath = import (configPath + /keymap.nix);
settingsPath = import (configPath + /settings.nix);
in
{
enable = true;
# package = flake.inputs.yazi.packages.${pkgs.system}.yazi;
enableNushellIntegration = true;
keymap = keymapPath;
settings = settingsPath;
};
# Keymap
# https://github.com/sxyazi/yazi/blob/main/yazi-config/preset/keymap.toml
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
zip
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
ani-cli
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,76 @@
{
logo = {
source = "nixos_large";
padding = {
right = 2;
top = 3;
};
};
display = {
size = {
binaryPrefix = "si";
};
color = "magenta";
separator = " ";
};
modules = [
{
type = "separator";
string = "SYSTEM: ";
}
{
type = "os";
key = "NixOS Version";
}
{
type = "kernel";
key = "Kernel Version";
}
"shell"
"terminal"
"packages"
"locale"
{
type = "wm";
key = "Window Manager";
}
{
type = "separator";
string = "HARDWARE: ";
}
{
type = "board";
key = "Motherboard";
}
{
type = "cpu";
key = "Processor";
}
{
type = "gpu";
key = "Graphics";
}
"memory"
"disk"
"display"
"gamepad"
{
type = "sound";
key = "Audio Interface";
}
{
type = "separator";
string = "INTERFACE: ";
}
"theme"
"cursor"
"icons"
"font"
"editor"
"player"
{
type = "media";
key = "Song";
}
];
}

View file

@ -0,0 +1,10 @@
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix);
in
{
programs.fastfetch = {
enable = true;
settings = settingsPath;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
libgen-cli
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
nyancat
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
yabridge
;
};
}

View file

@ -0,0 +1,4 @@
''
--embed-chapters
--audio-quality 0
''

View file

@ -0,0 +1,7 @@
{
embed-thumbnail = true;
embed-subs = true;
sub-langs = "english";
downloader = "aria2c";
downloader-args = "aria2c:'-c -x8 -s8 -k1M'";
}

View file

@ -0,0 +1,13 @@
{
programs.yt-dlp =
let
configPath = ./config;
extraConfigPath = import (configPath + /extraConfig.nix);
settingsPath = import (configPath + /settings.nix);
in
{
enable = true;
extraConfig = extraConfigPath;
settings = settingsPath;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,15 @@
{
programs.nushell = {
enable = true;
configFile.text = ''
sleep 7ms
$env.config = {show_banner: false}
'';
shellAliases = {
y = "yy";
lg = "lazygit";
yt = "yt-dlp --embed-chapters";
ze = "zellij";
};
};
}

View file

@ -0,0 +1,98 @@
{
flake,
config,
lib,
...
}:
let
inherit (flake.config.aesthetics.themes) currentTheme palettes;
inherit (flake.config.people) user0 user1 user2;
user = config.home.username;
themeLogic =
if user == user0 then
currentTheme.theme0
else if user == user1 then
currentTheme.theme1
else if user == user2 then
currentTheme.theme2
else
currentTheme.theme0;
el = palettes.${themeLogic}.colours;
makeColor = c: "#" + c;
makeStyle = bg: fg: "bg:" + bg + " fg:" + fg + " bold";
surround =
fg: text:
"[](fg:"
+ makeColor el.base00
+ " bg:"
+ fg
+ ")"
+ "[](fg:"
+ fg
+ ")"
+ text
+ "[](fg:"
+ fg
+ ")";
in
{
add_newline = false;
character =
let
makeChar =
bg: c:
surround (makeColor bg) ("[" + c + "](" + makeStyle (makeColor bg) (makeColor el.base11) + ")");
in
{
error_symbol = makeChar el.base12 "";
format = "$symbol";
success_symbol = makeChar el.base0C "λ";
};
cmd_duration = {
format = surround (makeColor el.base0E) "[ $duration]($style)";
min_time = 0;
show_milliseconds = true;
style = makeStyle (makeColor el.base0E) (makeColor el.base11);
};
directory = {
format = surround (makeColor el.base0D) "[󰉋 $path]($style)[$read_only]($read_only_style)";
read_only = " ";
read_only_style = makeStyle (makeColor el.base0D) (makeColor el.base11);
style = makeStyle (makeColor el.base0D) (makeColor el.base11);
truncation_length = 1;
truncate_to_repo = false;
};
git_branch = {
format = surround (makeColor el.base09) "[$symbol $branch]($style)";
style = makeStyle (makeColor el.base09) (makeColor el.base11);
symbol = "";
};
git_status = {
format = "[ \\[$all_status$ahead_behind\\]]($style)";
style = makeStyle (makeColor el.base0A) (makeColor el.base11);
};
hostname = {
format = surround (makeColor el.base16) "[$ssh_symbol$hostname]($style)";
ssh_symbol = "󰖟 ";
style = makeStyle (makeColor el.base16) (makeColor el.base11);
};
pijul_channel = {
disabled = false;
format = surround (makeColor el.base09) "[$symbol $channel]($style)";
style = makeStyle (makeColor el.base09) (makeColor el.base11);
symbol = "";
};
format = lib.concatStrings [
"$hostname"
"$directory"
"$pijul_channel"
"$git_branch"
"$cmd_duration"
"$character "
];
}

View file

@ -0,0 +1,16 @@
{
flake,
config,
lib,
...
}:
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) { inherit config flake lib; };
in
{
programs.starship = {
enable = true;
settings = settingsPath;
};
}

View file

@ -0,0 +1,6 @@
{
programs.zellij = {
enable = true;
settings.theme = "catppuccin-macchiato";
};
}

View file

@ -0,0 +1,10 @@
{ pkgs, ... }:
{
programs.zoxide = {
enable = true;
enableNushellIntegration = true;
package = pkgs.zoxide;
options = [
];
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
alsa-utils
;
};
}

View file

@ -0,0 +1,67 @@
{
flake,
config,
...
}:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
inherit (flake.config.people) user0 user1 user2;
user = config.home.username;
themeLogic =
if user == user0 then
currentTheme.theme0
else if user == user1 then
currentTheme.theme1
else if user == user2 then
currentTheme.theme2
else
currentTheme.theme0;
el = palettes.${themeLogic}.colours;
in
{
colors = {
tableHeaderColor = el.base06;
allCpuColor = el.base06;
avgCpuColor = el.base12;
cpuCoreColors = [
el.base07
el.base16
el.base09
el.base0A
el.base0B
el.base15
el.base0E
];
ramColor = el.base0B;
swapColor = el.base09;
rxColor = el.base0B;
txColor = el.base08;
widgetTitleColor = el.base0F;
borderColor = el.base04;
highlightedBorderColor = el.base17;
textColor = el.base05;
graphColor = el.base05;
cursorColor = el.base17;
selectedTextColor = el.base11;
selectedBgColor = el.base0E;
highBatteryColor = el.base0B;
mediumBatteryColor = el.base0A;
lowBatteryColor = el.base08;
gpuCoreColors = [
el.base15
el.base0E
el.base08
el.base09
el.base0A
el.base0B
];
arcColor = el.base15;
};
}

View file

@ -0,0 +1,16 @@
{
flake,
config,
...
}:
{
programs.bottom =
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) { inherit config flake; };
in
{
enable = true;
settings = settingsPath;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
brightnessctl
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
cifs-utils
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,6 @@
{
programs.direnv = {
enable = true;
nix-direnv.enable = true;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
ffmpeg
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
flac
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
glib
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
hardinfo
;
};
}

View file

@ -0,0 +1 @@
{ programs.home-manager.enable = true; }

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
inetutils
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
libnatpmp
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
pamixer
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
parted
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
pciutils
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
pinentry
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
playerctl
;
};
}

View file

@ -0,0 +1,12 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
protonvpn-cli_2
protonvpn-gui
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
speedtest-rs
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
sshfs
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
tokei
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
tomb
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
wget
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
wine
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
xdg-utils
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
xdotool
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,8 @@
[
{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock Origin
{ id = "cmpdlhmnmjhihmcfnigoememnffkimlk"; } # Catppuccin Macchiato
{ id = "dlnpfhfhmkiebpnlllpehlmklgdggbhn"; } # Don't Close Last Tab
{ id = "iplffkdpngmdjhlpjmppncnlhomiipha"; } # Unpaywall
{ id = "mnjggcdmjocbbbhaepdhchncahnbgone"; } # SponsorBlock
{ id = "ponfpcnoihfmfllpaingbgckeeldkhle"; } # YouTube Enhancer
]

View file

@ -0,0 +1,11 @@
{
programs.brave =
let
configPath = ./config;
extensionsPath = import (configPath + /extensions.nix);
in
{
enable = true;
extensions = extensionsPath;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
brave
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
google-chrome
;
};
}

View file

@ -0,0 +1,10 @@
let
content = builtins.readDir ./.;
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
importList = map (name: ./. + "/${name}") dirContent;
in
{
imports = importList;
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
microsoft-edge
;
};
}

View file

@ -0,0 +1,11 @@
{
pkgs,
...
}:
{
home.packages = builtins.attrValues {
inherit (pkgs)
epiphany
;
};
}

View file

@ -0,0 +1,54 @@
{
name = "Academic";
toolbar = false;
bookmarks = [
{
name = "PubMed";
url = "https://pubmed.ncbi.nlm.nih.gov";
tags = [
"pub"
"pubmed"
"science"
"research"
"academic"
];
keyword = "Pub";
}
{
name = "Sci-Hub";
url = "https://sci-hub.ee";
tags = [
"sci"
"sci-hub"
"scihub"
"science"
"research"
"academic"
"torrent"
];
keyword = "Sci";
}
{
name = "Stanford Encyclopedia of Philosophy";
url = "https://plato.stanford.edu";
tags = [
"standford"
"encyclopedia"
"philosophy"
"phil"
];
keyword = "Phil";
}
{
name = "Zotero Bibliography";
url = "https://zbib.org";
tags = [
"votero"
"bibliography"
"bib"
"zbib"
];
keyword = "Bib";
}
];
}

View file

@ -0,0 +1,98 @@
let
gitlabTags = [
"git"
"gitlab"
];
gitlabURL = "https://gitlab.com";
in
{
name = "Development";
toolbar = false;
bookmarks = [
{
name = "Discord (Development Portal)";
url = "https://discord.com/developers/applications";
tags = [
"discord"
"development"
"portal"
"bot"
];
keyword = "Discord";
}
{
name = "Elm-UI";
url = "https://package.elm-lang.org/packages/mdgriffith/elm-ui/latest/";
tags = [
"elm-ui"
"elm"
"ui"
];
keyword = "Elm";
}
{
name = "Elm Examples";
url = "https://elm-lang.org/examples";
tags = [
"elm"
"elm"
"examples"
];
keyword = "Elm";
}
{
name = "GitHub";
url = "https://github.com/BRBWaffles";
tags = [
"git"
"github"
"brbwaffles"
];
keyword = "GitHub";
}
{
name = "GitLab (Fallaryn)";
url = "${gitlabURL}/fallaryn/dotfiles";
tags = [
"fallaryn"
] ++ gitlabTags;
keyword = "GitLab";
}
{
name = "GitLab (Isaac)";
url = "${gitlabURL}/askyourself/dotfiles";
tags = [
"isaac"
"askyourself"
] ++ gitlabTags;
keyword = "GitLab";
}
{
name = "GitLab (Nick)";
url = "${gitlabURL}/upRootNutrition/dotfiles";
tags = [
"brbwaffles"
] ++ gitlabTags;
keyword = "GitLab";
}
{
name = "Hackage";
url = "https://hackage.haskell.org";
tags = [
"hackage"
"hack"
"haskell"
];
keyword = "Hack";
}
{
name = "Discord-Haskell";
url = "https://hackage.haskell.org/package/discord-haskell-1.17.1";
tags = [
"discord"
"haskell"
];
keyword = "Dack";
}
];
}

View file

@ -0,0 +1,154 @@
{
name = "Finances";
toolbar = false;
bookmarks = [
{
name = "Adsense";
url = "https://www.google.com/adsense/new/u/0/pub-4524791551954022/payments";
tags = [
"google"
"adsense"
"ads"
"money"
];
keyword = "Adsense";
}
{
name = "Canada Revenue Agency";
url = "https://apps4.ams-sga.cra-arc.gc.ca/gol-ged/awsc/amss/browser/check?program=mima&target=login&lang=en&idp=cms";
tags = [
"cra"
"canada"
"money"
];
keyword = "CRA";
}
{
name = "Credit Karma";
url = "https://www.creditkarma.ca";
tags = [
"credit"
"karma"
"bank"
"banking"
];
keyword = "Credit";
}
{
name = "Kijiji";
url = "https://www.kijiji.ca";
tags = [
"kijiji"
"kij"
"ki"
];
keyword = "Kij";
}
{
name = "LiberaPay";
url = "https://liberapay.com/upRootNutrition";
tags = [
"libera"
"liberapay"
"donations"
"bank"
"banking"
"money"
"uprootnutrition"
];
keyword = "Libera";
}
{
name = "Patreon";
url = "https://www.patreon.com/upRootNutrition";
tags = [
"patreon"
"donations"
"bank"
"banking"
"money"
"uprootnutrition"
];
keyword = "Patreon";
}
{
name = "PayPal";
url = "https://www.paypal.com/myaccount/summary?intl=0";
tags = [
"paypal"
"bank"
"banking"
"money"
];
keyword = "PayPal";
}
{
name = "Shopify";
url = "https://uprootnutrition.myshopify.com/admin";
tags = [
"shopify"
"business"
"shop"
"bank"
"banking"
"money"
];
keyword = "Shopify";
}
{
name = "Simplii";
url = "https://online.simplii.com/ebm-resources/public/client/web/index.html#/signon";
tags = [
"simplii"
"bank"
"banking"
"money"
];
keyword = "Simplii";
}
{
name = "Stripe";
url = "https://dashboard.stripe.com/settings/user";
tags = [
"stripe"
"bank"
"banking"
"money"
];
keyword = "Stripe";
}
{
name = "Telus (Security)";
url = "https://smarthome-security.telus.com/web/system/home";
tags = [
"telus"
"security"
];
keyword = "ADT";
}
{
name = "Wealthsimple";
url = "https://my.wealthsimple.com/app/tax-onboarding/2021";
tags = [
"wealth"
"simple"
"bank"
"banking"
"crypto"
];
keyword = "Wealth";
}
{
name = "Wix";
url = "https://manage.wix.com/dashboard/413fd74d-8a8f-4c77-bd91-9ea560ffe906/home";
tags = [
"wix"
"website"
"business"
"bills"
"uprootnutrition"
];
keyword = "Wix";
}
];
}

View file

@ -0,0 +1,213 @@
{ flake, ... }:
let
inherit (flake.config.people)
user0
;
inherit (flake.config.people.users.${user0})
aliases
;
inherit (flake.config.machines.devices)
synology
server
;
inherit (flake.config.services)
instances
;
jellyfinTags = [
"jelly"
"video"
"streaming"
"movies"
"shows"
"music"
];
ollamaTags = [
instances.ollama.name
"chat"
"ai"
];
owncastTags = [
instances.owncast.name
"own"
"cast"
"stream"
];
syncthingTags = [
instances.syncthing.name
"sync"
"thing"
instances.synology.name
];
in
{
name = "Self Hosted";
toolbar = false;
bookmarks = [
{
name = "Elm-Land Server";
url = "http://localhost:1234";
tags = [
"elm-land"
"elm"
"land"
];
keyword = "Website";
}
{
name = instances.forgejo.label;
url = "https://${instances.forgejo.subdomain}.${instances.web.domains.url3}";
tags = [
instances.forgejo.name
"forge"
"git"
];
keyword = instances.forgejo.label;
}
# {
# name = instances.hledger.label;
# url = "http://localhost.${builtins.toString instances.hledger.ports.port0}";
# tags = [
# instances.hledger.name
# "hledger"
# "finances"
# ];
# keyword = instances.hledger.label;
# }
{
name = "${instances.jellyfin.label} (Internet)";
url = "https://${instances.jellyfin.name}.${instances.web.domains.url0}";
tags = jellyfinTags;
keyword = instances.jellyfin.label;
}
{
name = "${instances.jellyfin.label} (Local)";
url = "http://${server.ip.address0}:${toString instances.jellyfin.ports.port1}";
tags = jellyfinTags;
keyword = instances.jellyfin.label;
}
{
name = instances.mastodon.label;
url = "https://${instances.mastodon.subdomain}.${instances.web.domains.url3}";
tags = [
instances.mastodon.name
"mast"
"md"
];
keyword = instances.mastodon.label;
}
{
name = "Namecheap";
url = "https://www.namecheap.com";
tags = [
"namecheap"
"name"
"cheap"
"dns"
];
keyword = "Name";
}
{
name = instances.nextcloud.label;
url = "https://${instances.nextcloud.subdomain}.${instances.web.domains.url1}";
tags = [
instances.nextcloud.name
"next"
"cloud"
"calendar"
];
keyword = instances.nextcloud.label;
}
{
name = aliases.name2;
url = instances.web.domains.url2;
tags = [
aliases.name3
"blog"
];
keyword = aliases.name2;
}
{
name = "${instances.ollama.label} (Server)";
url = "https://${instances.ollama.subdomain}.${instances.web.domains.url0}";
tags = ollamaTags;
keyword = instances.ollama.label;
}
{
name = "${instances.ollama.label} (Desktop)";
url = "http://localhost:${toString instances.ollama.ports.port0}";
tags = ollamaTags;
keyword = instances.ollama.label;
}
# {
# name = "${instances.owncast.label} (Admin)";
# url = "http://${server.ip.address0}:${toString instances.owncast.ports.port0}/admin";
# tags = owncastTags;
# keyword = instances.owncast.label;
# }
# {
# name = "${instances.owncast.label} (Server)";
# url = "http://${instances.owncast.subdomain}.${instances.web.domains.url1}";
# tags = owncastTags;
# keyword = instances.owncast.label;
# }
# {
# name = instances.peertube.label;
# url = "https://${instances.peertube.subdomain}.${instances.web.domains.url3}";
# tags = [
# instances.peertube.name
# "peer"
# "tube"
# "uprootnutrition"
# ];
# keyword = instances.peertube.label;
# }
{
name = "Router";
url = "http://${instances.web.localhost.address2}";
tags = [
"router"
"asus"
];
keyword = "Router";
}
{
name = "${instances.syncthing.label} (${instances.synology.label})";
url = "http://${synology.ip.address0}:${toString instances.syncthing.ports.port0}";
tags = [
"synology"
] ++ syncthingTags;
keyword = instances.syncthing.label;
}
{
name = "${instances.syncthing.label} (Desktop)";
url = "http://localhost:${toString instances.syncthing.ports.port0}";
tags = [
"desktop"
] ++ syncthingTags;
keyword = instances.syncthing.label;
}
{
name = instances.synology.label;
url = "https://${synology.ip.address0}:${toString instances.synology.ports.port0}";
tags = [
instances.synology.name
"dsm"
"cloud"
];
keyword = instances.synology.label;
}
{
name = instances.vaultwarden.label;
url = "https://${instances.vaultwarden.subdomain}.${instances.web.domains.url0}";
tags = [
instances.vaultwarden.name
"bitwarden"
"vault"
"bit"
"warden"
];
keyword = instances.vaultwarden.label;
}
];
}

View file

@ -0,0 +1,52 @@
{
name = "Gaming";
toolbar = false;
bookmarks = [
{
name = "Battle.net";
url = "https://us.shop.battle.net";
tags = [
"battle.net"
"battle"
"net"
];
keyword = "Battle";
}
{
name = "Chess.com";
url = "https://www.chess.com/home";
tags = [
"chess"
];
keyword = "Chess";
}
{
name = "Lichess";
url = "https://lichess.org";
tags = [
"lichess"
"chess"
];
keyword = "Li";
}
{
name = "ProtonDB";
url = "https://www.protondb.com";
tags = [
"steam"
"db"
];
keyword = "DB";
}
{
name = "SteamDB";
url = "https://steamdb.info";
tags = [
"steamdb"
"steam"
"db"
];
keyword = "SteamDB";
}
];
}

View file

@ -0,0 +1,80 @@
{
name = "Shopping";
toolbar = false;
bookmarks = [
{
name = "Amazon";
url = "https://www.amazon.ca";
tags = [
"amazon"
"shopping"
"supply"
];
keyword = "Amazon";
}
{
name = "Door Dash";
url = "https://www.doordash.com";
tags = [
"doordash"
"door"
"dash"
"food"
];
keyword = "Dash";
}
{
name = "Fiverr";
url = "https://www.fiverr.com";
tags = [
"fiverr"
"graphic"
"design"
];
keyword = "Five";
}
{
name = "FTY Supplies";
url = "https://fytsupplies.ca";
tags = [
"tattoo tat"
"fyt"
"shopping"
"supply"
];
keyword = "FYT";
}
{
name = "Skip the Dishes";
url = "https://www.skipthedishes.com";
tags = [
"skip"
"dishes"
"food"
];
keyword = "Skip";
}
{
name = "Uber Eats";
url = "https://www.ubereats.com";
tags = [
"uber"
"eats"
"food"
];
keyword = "Uber";
}
{
name = "TatSoul";
url = "https://www.tatsoul.com";
tags = [
"tattoo"
"tat"
"tatsoul"
"shopping"
"supply"
];
keyword = "TatSoul";
}
];
}

View file

@ -0,0 +1,186 @@
let
discordTags = [
"disboard"
"discord"
"dis"
"ds"
"social"
];
youtubeTags = [
"youtube"
"you"
"tube"
"yt"
];
in
{
name = "Social Media";
toolbar = false;
bookmarks = [
{
name = "upRootNutrition";
url = "https://upRootNutrition.com";
tags = [
"uprootnutrition"
"up"
"root"
"nutrition"
];
keyword = "Root";
}
{
name = "Disboard";
url = "https://disboard.org";
tags = discordTags;
keyword = "Disboard";
}
{
name = "Discord (Web Client)";
url = "https://discord.com/channels/@me";
tags = discordTags;
keyword = "Discord";
}
{
name = "Facebook";
url = "https://www.facebook.com/";
tags = [
"facebook"
"face"
"book"
];
keyword = "Face";
}
{
name = "Gmail";
url = "https://mail.google.com/mail/u/0/#inbox";
tags = [
"gmail"
"google"
"mail"
"gm"
"email"
];
keyword = "Gmail";
}
{
name = "Lemmy";
url = "https://lemmy.world";
tags = [
"lemmy"
"social"
];
keyword = "Lem";
}
{
name = "OnlyFans";
url = "https://onlyfans.com";
tags = [
"onlyfans"
"only"
"fans"
];
keyword = "Only";
}
{
name = "Pixelfed";
url = "https://pixelfed.social/i/web/profile/651714972141461392";
tags = [
"pixelfed"
"pixel"
"pi"
];
keyword = "Pix";
}
{
name = "Proton Mail";
url = "https://mail.proton.me/u/1/inbox";
tags = [
"proton"
"mail"
"pr"
"email"
];
keyword = "Pro";
}
{
name = "Proton Calendar";
url = "https://calendar.proton.me";
tags = [
"proton"
"calendar"
];
keyword = "Cal";
}
{
name = "Proton VPN";
url = "https://account.proton.me/u/0/vpn";
tags = [
"proton"
"vpn"
];
keyword = "VPN";
}
{
name = "Reddit";
url = "https://www.reddit.com";
tags = [
"reddit"
"social"
];
keyword = "Reddit";
}
{
name = "Slack";
url = "https://app.slack.com/";
tags = [
"slack"
"social"
];
keyword = "Slack";
}
{
name = "StreamLabs";
url = "https://streamlabs.com/dashboard";
tags = [
"streamlabs"
"stream"
"labs"
];
keyword = "Stream";
}
{
name = "Tinder";
url = "https://tinder.com/app/recs";
tags = [
"tinder"
"dating"
"booty"
];
keyword = "Tinder";
}
{
name = "YouTube";
url = "https://www.youtube.com";
tags = youtubeTags;
keyword = "You";
}
{
name = "YouTube Studio";
url = "https://studio.youtube.com/channel/UCy9yYcDx2XuVVgcWLJJDoxw";
tags = [
"studio"
] ++ youtubeTags;
keyword = "Studio";
}
{
name = "X (Twitter)";
url = "https://x.com/upRootNutrition";
tags = [
"twitter"
"x"
"social"
];
keyword = "Twitter";
}
];
}

View file

@ -0,0 +1,282 @@
{
name = "Tools";
toolbar = false;
bookmarks = [
{
name = "Mullvad";
url = "https://mullvad.net";
tags = [
"mullvad"
"vpn"
];
keyword = "Mull";
}
{
name = "Cyanophage Layout Analyzer";
url = "https://cyanophage.github.io";
tags = [
"cyanophage"
"keyboard"
"layout"
];
keyword = "Layout";
}
{
name = "Smtp2Go";
url = "https://app-us.smtp2go.com/dashboard/main";
tags = [
"smtp"
"email"
];
keyword = "Smtp";
}
{
name = "Oryx";
url = "https://configure.zsa.io/moonlander";
tags = [
"zsa"
"moonlander"
"keyboard"
"layout"
];
keyword = "Moon";
}
{
name = "Hugging Face";
url = "https://www.huggingface.co";
tags = [
"hugging"
"face"
"ai"
"gguf"
];
keyword = "Hug";
}
{
name = "DeepSeek";
url = "https://chat.deepseek.com/";
tags = [
"deepseek"
"deep"
"seek"
"ai"
];
keyword = "Deep";
}
{
name = "Uncensored AI";
url = "https://www.aiuncensored.info";
tags = [
"uncensored"
"ai"
];
keyword = "AI";
}
{
name = "Canadian Blood Services";
url = "https://www.blood.ca/en";
tags = [
"canadian"
"blood"
"services"
"give"
];
keyword = "Give";
}
{
name = "Chmod Calculator";
url = "https://chmod-calculator.com";
tags = [
"chmod"
"calculator"
];
keyword = "Chmod";
}
{
name = "ChatGPT";
url = "https://chatgpt.com";
tags = [
"chat"
"chatgpt"
"gpt"
];
keyword = "Chat";
}
{
name = "Claude AI";
url = "https://claude.ai";
tags = [
"claude"
"ai"
];
keyword = "Claude";
}
{
name = "Cronometer";
url = "https://cronometer.com/#diary";
tags = [
"cronometer"
"cron"
"nutrition"
];
keyword = "Cron";
}
{
name = "DNS Checker";
url = "https://dnschecker.org";
tags = [
"dns"
"checker"
];
keyword = "DNS";
}
{
name = "EventBrite";
url = "https://www.eventbrite.ca/d/canada--winnipeg/events--today/winnipeg/?page=1";
tags = [
"eventbrite"
"event"
"brite"
];
keyword = "Event";
}
{
name = "Google Maps";
url = "https://www.google.com/maps";
tags = [
"maps"
"google"
];
keyword = "Map";
}
{
name = "ListenBrainz";
url = "https://listenbrainz.org/user/BRBWaffles";
tags = [
"listenbrainz"
"listen"
"brains"
];
keyword = "Listen";
}
{
name = "Memory Express";
url = "https://www.memoryexpress.com";
tags = [
"memoryexpress"
"memory"
"mem"
"express"
];
keyword = "Mem";
}
{
name = "Percentage Calculator";
url = "https://percentagecalculator.net";
tags = [
"percentage"
"percent"
"calculator"
];
keyword = "Percent";
}
{
name = "Portchecker";
url = "https://portchecker.co";
tags = [
"portchecker"
"port"
"checker"
];
keyword = "Port";
}
{
name = "Proof Tree";
url = "https://www.umsu.de/trees";
tags = [
"proof"
"tree"
"logic"
"academic"
];
keyword = "Logic";
}
{
name = "RhymeZone";
url = "https://www.rhymezone.com";
tags = [
"rhymezone"
"rhyme"
"zone"
];
keyword = "Rhyme";
}
{
name = "Sci-Hub";
url = "https://sci-hub.ee";
tags = [
"sci"
"sci-hub"
"scihub"
"science"
"research"
"academic"
"torrent"
];
keyword = "Sci";
}
{
name = "Speedtest";
url = "https://www.speedtest.net";
tags = [
"speedtest"
"speed"
"test"
];
keyword = "Speed";
}
{
name = "Stanford Encyclopedia of Philosophy";
url = "https://plato.stanford.edu";
tags = [
"standford"
"encyclopedia"
"philosophy"
"phil"
];
keyword = "Phil";
}
{
name = "Telus (Billing)";
url = "https://www.telus.com/my-telus/billing/summary";
tags = [
"telus"
"phone"
"bills"
"money"
];
keyword = "Telus";
}
{
name = "TinEye";
url = "https://tineye.com";
tags = [
"tineye"
"tin"
"eye"
];
keyword = "Tin";
}
{
name = "Zotero Bibliography";
url = "https://zbib.org";
tags = [
"votero"
"bibliography"
"bib"
"zbib"
];
keyword = "Bib";
}
];
}

View file

@ -0,0 +1,44 @@
{
name = "Tracking";
toolbar = false;
bookmarks = [
{
name = "1337";
url = "https://1337x.to";
tags = [
"torrent"
"1337"
];
keyword = "1337";
}
{
name = "Core Radio";
url = "https://coreradio.online";
tags = [
"core"
"radio"
"metal"
];
keyword = "Core";
}
{
name = "Metal Tracker";
url = "https://en.metal-tracker.com";
tags = [
"metaltracker"
"metal"
"tracker"
];
keyword = "Metal";
}
{
name = "Torrent Leech";
url = "https://www.torrentleech.org";
tags = [
"torrent"
"leech"
];
keyword = "Leech";
}
];
}

View file

@ -0,0 +1,34 @@
{ flake, ... }:
let
configPath = ./config;
flakedPath = configPath + /flake;
filterFiles = name: builtins.match ".*\\.nix$" name != null;
regularBookmarks =
let
files = builtins.attrNames (builtins.readDir configPath);
in
builtins.foldl' (
emptyList: bookmarkFile: emptyList ++ (import (configPath + "/${bookmarkFile}")).bookmarks
) [ ] (builtins.filter filterFiles files);
flakedBookmarks =
let
files = builtins.attrNames (builtins.readDir flakedPath);
in
builtins.foldl' (
emptyList: bookmarkFile:
emptyList
++ (import (flakedPath + "/${bookmarkFile}") {
inherit
flake
;
}).bookmarks
) [ ] (builtins.filter filterFiles files);
aggregatedBookmarks = regularBookmarks ++ flakedBookmarks;
in
{
bookmarks = aggregatedBookmarks;
}

View file

@ -0,0 +1,13 @@
{ pkgs, ... }:
{
extensions = builtins.attrValues {
inherit (pkgs.nur.repos.rycee.firefox-addons)
bitwarden
enhancer-for-youtube
sponsorblock
ublock-origin
unpaywall
sidebery
;
};
}

View file

@ -0,0 +1,19 @@
{
"Sci-Hub" = {
definedAliases = [
"@sc"
];
icon = ./icons/sc.png;
urls = [
{ template = "https://sci-hub.ee/{searchTerms}"; }
];
};
"Wikipedia" = {
definedAliases = [
"@wi"
];
urls = [
{ template = "https://en.wikipedia.org/wiki/{searchTerms}"; }
];
};
}

View file

@ -0,0 +1,69 @@
{
"DNS Checker" = {
definedAliases = [
"@dn"
];
icon = ./icons/dn.png;
urls = [
{ template = "https://dnschecker.org/#A/{searchTerms}"; }
];
};
"Hackage" = {
definedAliases = [
"@ha"
];
icon = ./icons/ha.png;
urls = [
{ template = "https://hackage.haskell.org/packages/search?terms={searchTerms}"; }
];
};
"Hoogle" = {
definedAliases = [
"@ho"
];
icon = ./icons/ho.png;
urls = [
{ template = "https://www.stackage.org/lts-22.33/hoogle?q={searchTerms}"; }
];
};
"Nix Home Manager" = {
definedAliases = [
"@nh"
];
icon = ./icons/nx.png;
urls = [
{ template = "https://searchix.alanpearce.eu/options/home-manager/search?query={searchTerms}"; }
];
};
"Nix Options" = {
definedAliases = [
"@no"
];
icon = ./icons/nx.png;
urls = [
{
template = "https://search.nixos.org/options?channel=unstable&size=50&sort=relevance&type=packages&query={searchTerms}";
}
];
};
"Nix Packages" = {
definedAliases = [
"@np"
];
icon = ./icons/nx.png;
urls = [
{
template = "https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query={searchTerms}";
}
];
};
"Nix Wiki" = {
definedAliases = [
"@nw"
];
icon = ./icons/nx.png;
urls = [
{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }
];
};
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

View file

@ -0,0 +1,30 @@
{ flake, ... }:
let
inherit (flake.config.services)
instances
;
in
{
"${instances.jellyfin.label}" = {
definedAliases = [
"@jf"
];
icon = ./icons/jf.png;
urls = [
{
template = "https://${instances.jellyfin.subdomain}.${instances.web.domains.url0}/web/#/search.html?query={searchTerms}";
}
];
};
"${instances.peertube.label}" = {
definedAliases = [
"@pt"
];
icon = ./icons/pt.png;
urls = [
{
template = "https://${instances.peertube.subdomain}.${instances.web.domains.url1}/search?search={searchTerms}";
}
];
};
}

View file

@ -0,0 +1,21 @@
{
"Proton DB" = {
definedAliases = [
"@pd"
];
icon = ./icons/pd.png;
urls = [
{ template = "https://www.protondb.com/search?q={searchTerms}"; }
];
};
"Steam DB" = {
definedAliases = [
"@sd"
];
icon = ./icons/sd.png;
urls = [
{ template = "https://steamdb.info/search/?a=all&q={searchTerms}"; }
];
};
}

View file

@ -0,0 +1,7 @@
{
"Amazon.ca".metaData.hidden = true;
"Bing".metaData.hidden = true;
"eBay".metaData.hidden = true;
"Google".metaData.hidden = true;
"Wikipedia (en)".metaData.hidden = true;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Some files were not shown because too many files have changed in this diff Show more