14 Commits

Author SHA1 Message Date
677783bfd2 windowrule fixed this. it works again 2026-02-01 21:12:24 +01:00
f8407706a3 #13 removed errands 2026-02-01 19:19:46 +01:00
b6d1be0efc added some scripts and configuration for gpu screen recorder. note: gpu-screen-recorder must be installed for this 2026-01-30 18:29:51 +01:00
fff6779344 Merge pull request #11 from quirinecker/10-pdf-default-program
added default application entry for pdf files (default browser)
2026-01-29 18:40:30 +01:00
3a6f8c49cc added default application entry for pdf files (default browser) 2026-01-29 18:39:45 +01:00
2e3ac6e095 added custom menu for power options 2026-01-27 16:19:06 +01:00
42ae7ddd18 changed pin keybinds for walker. were conflicting with the vim keybinds 2026-01-27 14:54:09 +01:00
e96cf7518e now using elephant as a seperate input. This way it will be updated by seperately 2026-01-27 14:05:45 +01:00
b4efbdcd2d disabled zen browser for now 2026-01-11 14:13:20 +01:00
8e82b16dbd added dart language support 2026-01-11 14:11:52 +01:00
10234ceb9a added errands for todos and assigned it to the 3rd workspace 2026-01-07 21:25:10 +01:00
d60ec7cdfe hyprshot now also freezes the screen 2026-01-03 13:10:58 +01:00
17a1e0c788 fugitive things are opening in a new tab now. At least the 2 most
important ones.
2025-12-25 09:02:27 +01:00
0d7c392b47 added some new git commands for fugitive to autoload 2025-12-25 08:59:53 +01:00
14 changed files with 96 additions and 78 deletions

View File

@@ -22,6 +22,7 @@ dotfiles-modules = {
inputs.nixpkgs.follows = "nixpkgs";
inputs.zen-browser.follows = "zen-browser";
inputs.walker.follows = "walker";
inputs.elephant.follows = "elephant";
};
zen-browser = {
@@ -32,6 +33,12 @@ zen-browser = {
walker = {
url = "github:abenz1267/walker";
inputs.nixpkgs.follows = "nixpkgs";
inputs.elephant.follows = "elephant";
};
elephant = {
url = "github:abenz1267/elephant";
inputs.nixpkgs.follows = "nixpkgs";
};
```

View File

@@ -11,9 +11,15 @@
inputs.nixpkgs.follows = "nixpkgs";
};
elephant = {
url = "github:abenz1267/elephant";
inputs.nixpkgs.follows = "nixpkgs";
};
walker = {
url = "github:abenz1267/walker";
inputs.nixpkgs.follows = "nixpkgs";
inputs.elephant.follows = "elephant";
};
nix-options-doc = {

View File

@@ -14,11 +14,13 @@ in
config = lib.mkIf config.modules.default_apps.enable {
xdg.mimeApps.enable = true;
xdg.mimeApps.defaultApplications = {
# Future Reference: use `xdg-mime query filetype <file>` to get the mime tyep of a given file
"text/html" = "${defaultBrowser}.desktop";
"x-scheme-handler/http" = "${defaultBrowser}.desktop";
"x-scheme-handler/https" = "${defaultBrowser}.desktop";
"x-scheme-handler/about" = "${defaultBrowser}.desktop";
"inode/directory" = "org.gnome.Nautilus.desktop";
"application/pdf" = "${defaultBrowser}.desktop";
};
xdg.terminal-exec.enable = true;

View File

@@ -27,6 +27,11 @@ in
"hypr/nix.conf".text = ''
$defaultBrowser=${defaultBrowser}
'';
"hypr/scripts/gpu-screen-recorder/save-replay.sh".source =
config.lib.file.mkOutOfStoreSymlink ./hyprland/scripts/gpu-screen-recorder/save-replay.sh;
"hypr/scripts/gpu-screen-recorder/start-replay.sh".source =
config.lib.file.mkOutOfStoreSymlink ./hyprland/scripts/gpu-screen-recorder/start-replay.sh;
};
};
}

View File

@@ -39,16 +39,20 @@ exec-once = hyprpanel & hyprpaper & hypridle & elephant & walker --gapplication-
exec-once = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Classic'
exec-once = gsettings set org.gnome.desktop.interface cursor-size 24
# This requires gpu-screen-recorder to be installed. I installed it with this https://wiki.nixos.org/wiki/Gpu-screen-recorder.
exec-once = ~/.config/hypr/scripts/gpu-screen-recorder/start-replay.sh
exec-once = spotify && signal-desktop && thunderbird && gnome-calendar && bitwarden && $browser
exec-once = [workspace 4 silent] signal-desktop
exec-once = [workspace 4 silent] spotify
exec-once = [workspace 4 silent] thunderbird
exec-once = [workspace 3 silent] gnome-calendar
exec-once = [workspace 3 silent] bitwarden
exec-once = [workspace 2 silent] $browser
exec-once = [workspace 1 silent] $terminal
# exec-once = [workspace 4 silent] discord
# windowrulev2 = workspace 4 silent once, class:^(discord)$
windowrule = match:class ^(zen-beta)$, workspace 2 silent
windowrule = match:class ^(org.gnome.Calendar)$, workspace 3 silent
windowrule = match:class ^(Bitwarden)$, workspace 3 silent
windowrule = match:class ^(discord)$, workspace 4 silent
windowrule = match:class ^(thunderbird)$, workspace 4 silent
windowrule = match:class ^(signal)$, workspace 4 silent
windowrule = match:class ^(Spotify)$, workspace 4 silent
env = HYPRCURSOR_SIZE,28
@@ -224,7 +228,9 @@ bind = $mainMod SHIFT, D, exec, discord
bind = SUPER_ALT,L, exec, hyprlock
bind = ,F10, exec, hyprlock
bind = $mainMod ALT, Space, exec, hyprctl switchxkblayout current next
bind = $mainMod SHIFT, S, exec, hyprshot -m region
bind = $mainMod SHIFT, S, exec, hyprshot -m region -z
# This requires gpu-screen-recorder to be installed. I installed it with this https://wiki.nixos.org/wiki/Gpu-screen-recorder.
bind = $mainMod SHIFT, V, exec, ~/.config/hypr/scripts/gpu-screen-recorder/save-replay.sh
bind = $mainMod SHIFT, C, exec, hyprpicker | wl-copy
bind = $mainMod, Y, exec, firefox

View File

@@ -0,0 +1,3 @@
#!/bin/sh -e
killall -SIGUSR1 gpu-screen-recorder && sleep 0.5 && notify-send -t 1500 -u low -- "GPU Screen Recorder" "Replay saved"

View File

@@ -0,0 +1,6 @@
#!/bin/sh
pidof -q gpu-screen-recorder && exit 0
video_path="$HOME/Videos"
mkdir -p "$video_path"
gpu-screen-recorder -w screen -f 60 -a default_output -c mkv -bm cbr -q 40000 -r 60 -o "$video_path"

View File

@@ -40,7 +40,7 @@ in
pkgs.luajitPackages.lua-lsp
pkgs.lua-language-server
pkgs.nil
pkgs.nixfmt-rfc-style
pkgs.nixfmt
pkgs.nixd
pkgs.rust-analyzer
pkgs.rustfmt
@@ -58,6 +58,7 @@ in
pkgs.clang-tools
pkgs.taplo
pkgs.tinymist
pkgs.dart
];
xdg.configFile = {
"nvim/init.lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/init.lua;

View File

@@ -1,13 +1,17 @@
return {
'tpope/vim-fugitive',
keys = {
{ '<leader>gg', ':Git<cr>', 'Git Status' },
{ '<leader>gg', ':tab Git<cr>', 'Git Status' },
{ '<leader>gc', function()
if vim.bo.filetype == 'fugitive' then
vim.cmd.close()
end
vim.cmd("Git commit")
vim.cmd("tab Git commit")
end, '(g)it (c)ommit' }
},
cmd = 'Git'
cmd = {
'Git',
'Gread',
'Gbrowse'
}
}

View File

@@ -122,7 +122,8 @@ local function lsp_setup()
'clangd',
'eslint',
'nushell',
'tinymist'
'tinymist',
'dartls'
-- 'jdtls'
})
@@ -160,6 +161,8 @@ local function lsp_setup()
cmd = { "tinymist" }
}))
vim.lsp.config('dartls', with_defaults(require("plugins.spec.server_configurations.dart")))
vim.diagnostic.config({
virtual_text = {
prefix = '', -- or '■', '▎', 'x', '' whatever you want

View File

@@ -0,0 +1,3 @@
return {
cmd = { "dart", "language-server", "--protocol=lsp" },
}

View File

@@ -45,8 +45,11 @@
pkgs.sops
pkgs.pavucontrol
# https://github.com/quirinecker/dotfiles-modules/issues/13
# pkgs.errands
# editors
pkgs.zed-editor
# pkgs.zed-editor # updating softwar crashed the pc. Not in use right now anyway. disabled for now
pkgs.vscode
# browsers

View File

@@ -1,10 +1,27 @@
name = "pw"
name = "power"
name_pretty = "Power"
icon = "Power"
global_search = true
icon = "applications-other"
[[entries]]
text = "Shutdown"
keywords = ["color", "picker", "hypr"]
actions = { "cp_use" = "wl-copy $(hyprpicker)" }
keywords = ["turn", "off", "power", "shutdown"]
actions = { "cp_use" = "shutdown -h now" }
icon = "system-shutdown"
[[entries]]
text = "Reboot"
keywords = ["restart", "reboot"]
actions = { "cp_use" = "reboot -r now" }
icon = "system-reboot"
[[entries]]
text = "Sleep"
keywords = ["sleep", "hibernate", "suspend"]
actions = { "cp_use" = "systemctl hibernate" }
icon = "weather-clear-night"
[[entries]]
text = "Lock"
keywords = ["lock"]
actions = { "cp_use" = "hyprlock" }
icon = "system-lock-screen"

View File

@@ -18,14 +18,7 @@ previous = ["ctrl p", "Up"]
quick_activate = []
[providers]
default = [
"desktopapplications",
"calc",
"runner",
"websearch",
"menus",
"pw"
]
default = ["desktopapplications", "calc", "runner", "websearch", "menus", "pw"]
[[providers.prefixes]]
prefix = ";"
@@ -57,60 +50,19 @@ provider = "clipboard"
[[providers.prefixes]]
prefix = "pw "
provider = "pw"
provider = "menus:power"
[providers.actions]
fallback = [
{ action = "menus:open", label = "open", after = "Nothing" },
{ action = "erase_history", label = "clear hist", bind = "ctrl h", after = "AsyncReload" },
]
desktopapplications = [
{ action = "start", default = true, bind = "Return" },
{ action = "start:keep", label = "open+next", bind = "shift Return", after = "KeepOpen" },
{ action = "erase_history", label = "clear hist", bind = "ctrl h", after = "AsyncReload" },
{ action = "pin", bind = "ctrl alt p", after = "AsyncReload" },
{ action = "unpin", bind = "ctrl alt p", after = "AsyncReload" },
{ action = "pinup", bind = "ctrl n", after = "AsyncReload" },
{ action = "pindown", bind = "ctrl m", after = "AsyncReload" },
{ action = "pin", bind = "ctrl alt p", after = "Nothing" },
{ action = "unpin", bind = "ctrl alt p", after = "Nothing" },
{ action = "pinup", bind = "ctrl alt n", after = "Nothing" },
{ action = "pindown", bind = "ctrl alt m", after = "Nothing" },
]
[[plugins]]
name = "wifi"
prefix = "wifi "
src_once = "node ~/.config/walker/plugins/wifi.cjs"
parser = "kv"
[[plugins]]
name = "power"
prefix = "pw "
keep_sort = false
placeholder = "Power"
recalculate_score = true
show_icon_when_single = true
switcher_only = true
[[plugins.entries]]
label = "Shutdown"
icon = "system-shutdown-symbolic"
exec = "shutdown now"
weight = 1
[[plugins.entries]]
label = "Reboot"
icon = "system-reboot-symbolic"
exec = "reboot"
weight = 2
[[plugins.entries]]
label = "Sleep"
icon = "weather-clear-night-symbolic"
exec = "systemctl suspend"
weight = 3
[[plugins.entries]]
label = "Lock"
icon = "system-lock-screen-symbolic"
exec = "hyprlock"
weight = 4
[[plugins.entries]]
label = "Logout"
icon = "system-log-out-symbolic"
exec = "hyprctl dispatch exit"
weight = 5