Compare commits
14 Commits
56b0f4d312
...
14-hyprlan
| Author | SHA1 | Date | |
|---|---|---|---|
| 677783bfd2 | |||
| f8407706a3 | |||
| b6d1be0efc | |||
| fff6779344 | |||
| 3a6f8c49cc | |||
| 2e3ac6e095 | |||
| 42ae7ddd18 | |||
| e96cf7518e | |||
| b4efbdcd2d | |||
| 8e82b16dbd | |||
| 10234ceb9a | |||
| d60ec7cdfe | |||
| 17a1e0c788 | |||
| 0d7c392b47 |
@@ -22,6 +22,7 @@ dotfiles-modules = {
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.zen-browser.follows = "zen-browser";
|
inputs.zen-browser.follows = "zen-browser";
|
||||||
inputs.walker.follows = "walker";
|
inputs.walker.follows = "walker";
|
||||||
|
inputs.elephant.follows = "elephant";
|
||||||
};
|
};
|
||||||
|
|
||||||
zen-browser = {
|
zen-browser = {
|
||||||
@@ -32,6 +33,12 @@ zen-browser = {
|
|||||||
walker = {
|
walker = {
|
||||||
url = "github:abenz1267/walker";
|
url = "github:abenz1267/walker";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.elephant.follows = "elephant";
|
||||||
|
};
|
||||||
|
|
||||||
|
elephant = {
|
||||||
|
url = "github:abenz1267/elephant";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -11,9 +11,15 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
elephant = {
|
||||||
|
url = "github:abenz1267/elephant";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
walker = {
|
walker = {
|
||||||
url = "github:abenz1267/walker";
|
url = "github:abenz1267/walker";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.elephant.follows = "elephant";
|
||||||
};
|
};
|
||||||
|
|
||||||
nix-options-doc = {
|
nix-options-doc = {
|
||||||
|
|||||||
@@ -14,11 +14,13 @@ in
|
|||||||
config = lib.mkIf config.modules.default_apps.enable {
|
config = lib.mkIf config.modules.default_apps.enable {
|
||||||
xdg.mimeApps.enable = true;
|
xdg.mimeApps.enable = true;
|
||||||
xdg.mimeApps.defaultApplications = {
|
xdg.mimeApps.defaultApplications = {
|
||||||
|
# Future Reference: use `xdg-mime query filetype <file>` to get the mime tyep of a given file
|
||||||
"text/html" = "${defaultBrowser}.desktop";
|
"text/html" = "${defaultBrowser}.desktop";
|
||||||
"x-scheme-handler/http" = "${defaultBrowser}.desktop";
|
"x-scheme-handler/http" = "${defaultBrowser}.desktop";
|
||||||
"x-scheme-handler/https" = "${defaultBrowser}.desktop";
|
"x-scheme-handler/https" = "${defaultBrowser}.desktop";
|
||||||
"x-scheme-handler/about" = "${defaultBrowser}.desktop";
|
"x-scheme-handler/about" = "${defaultBrowser}.desktop";
|
||||||
"inode/directory" = "org.gnome.Nautilus.desktop";
|
"inode/directory" = "org.gnome.Nautilus.desktop";
|
||||||
|
"application/pdf" = "${defaultBrowser}.desktop";
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.terminal-exec.enable = true;
|
xdg.terminal-exec.enable = true;
|
||||||
|
|||||||
@@ -27,6 +27,11 @@ in
|
|||||||
"hypr/nix.conf".text = ''
|
"hypr/nix.conf".text = ''
|
||||||
$defaultBrowser=${defaultBrowser}
|
$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;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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-theme 'Bibata-Modern-Classic'
|
||||||
exec-once = gsettings set org.gnome.desktop.interface cursor-size 24
|
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 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
|
env = HYPRCURSOR_SIZE,28
|
||||||
@@ -224,7 +228,9 @@ bind = $mainMod SHIFT, D, exec, discord
|
|||||||
bind = SUPER_ALT,L, exec, hyprlock
|
bind = SUPER_ALT,L, exec, hyprlock
|
||||||
bind = ,F10, exec, hyprlock
|
bind = ,F10, exec, hyprlock
|
||||||
bind = $mainMod ALT, Space, exec, hyprctl switchxkblayout current next
|
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 SHIFT, C, exec, hyprpicker | wl-copy
|
||||||
bind = $mainMod, Y, exec, firefox
|
bind = $mainMod, Y, exec, firefox
|
||||||
|
|
||||||
|
|||||||
3
homemanager/hyprland/scripts/gpu-screen-recorder/save-replay.sh
Executable file
3
homemanager/hyprland/scripts/gpu-screen-recorder/save-replay.sh
Executable 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"
|
||||||
|
|
||||||
6
homemanager/hyprland/scripts/gpu-screen-recorder/start-replay.sh
Executable file
6
homemanager/hyprland/scripts/gpu-screen-recorder/start-replay.sh
Executable 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"
|
||||||
@@ -40,7 +40,7 @@ in
|
|||||||
pkgs.luajitPackages.lua-lsp
|
pkgs.luajitPackages.lua-lsp
|
||||||
pkgs.lua-language-server
|
pkgs.lua-language-server
|
||||||
pkgs.nil
|
pkgs.nil
|
||||||
pkgs.nixfmt-rfc-style
|
pkgs.nixfmt
|
||||||
pkgs.nixd
|
pkgs.nixd
|
||||||
pkgs.rust-analyzer
|
pkgs.rust-analyzer
|
||||||
pkgs.rustfmt
|
pkgs.rustfmt
|
||||||
@@ -58,6 +58,7 @@ in
|
|||||||
pkgs.clang-tools
|
pkgs.clang-tools
|
||||||
pkgs.taplo
|
pkgs.taplo
|
||||||
pkgs.tinymist
|
pkgs.tinymist
|
||||||
|
pkgs.dart
|
||||||
];
|
];
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"nvim/init.lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/init.lua;
|
"nvim/init.lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/init.lua;
|
||||||
|
|||||||
@@ -1,13 +1,17 @@
|
|||||||
return {
|
return {
|
||||||
'tpope/vim-fugitive',
|
'tpope/vim-fugitive',
|
||||||
keys = {
|
keys = {
|
||||||
{ '<leader>gg', ':Git<cr>', 'Git Status' },
|
{ '<leader>gg', ':tab Git<cr>', 'Git Status' },
|
||||||
{ '<leader>gc', function()
|
{ '<leader>gc', function()
|
||||||
if vim.bo.filetype == 'fugitive' then
|
if vim.bo.filetype == 'fugitive' then
|
||||||
vim.cmd.close()
|
vim.cmd.close()
|
||||||
end
|
end
|
||||||
vim.cmd("Git commit")
|
vim.cmd("tab Git commit")
|
||||||
end, '(g)it (c)ommit' }
|
end, '(g)it (c)ommit' }
|
||||||
},
|
},
|
||||||
cmd = 'Git'
|
cmd = {
|
||||||
|
'Git',
|
||||||
|
'Gread',
|
||||||
|
'Gbrowse'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -122,7 +122,8 @@ local function lsp_setup()
|
|||||||
'clangd',
|
'clangd',
|
||||||
'eslint',
|
'eslint',
|
||||||
'nushell',
|
'nushell',
|
||||||
'tinymist'
|
'tinymist',
|
||||||
|
'dartls'
|
||||||
-- 'jdtls'
|
-- 'jdtls'
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -160,6 +161,8 @@ local function lsp_setup()
|
|||||||
cmd = { "tinymist" }
|
cmd = { "tinymist" }
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
vim.lsp.config('dartls', with_defaults(require("plugins.spec.server_configurations.dart")))
|
||||||
|
|
||||||
vim.diagnostic.config({
|
vim.diagnostic.config({
|
||||||
virtual_text = {
|
virtual_text = {
|
||||||
prefix = '●', -- or '■', '▎', 'x', '' whatever you want
|
prefix = '●', -- or '■', '▎', 'x', '' whatever you want
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
return {
|
||||||
|
cmd = { "dart", "language-server", "--protocol=lsp" },
|
||||||
|
}
|
||||||
@@ -45,8 +45,11 @@
|
|||||||
pkgs.sops
|
pkgs.sops
|
||||||
pkgs.pavucontrol
|
pkgs.pavucontrol
|
||||||
|
|
||||||
|
# https://github.com/quirinecker/dotfiles-modules/issues/13
|
||||||
|
# pkgs.errands
|
||||||
|
|
||||||
# editors
|
# editors
|
||||||
pkgs.zed-editor
|
# pkgs.zed-editor # updating softwar crashed the pc. Not in use right now anyway. disabled for now
|
||||||
pkgs.vscode
|
pkgs.vscode
|
||||||
|
|
||||||
# browsers
|
# browsers
|
||||||
|
|||||||
@@ -1,10 +1,27 @@
|
|||||||
name = "pw"
|
name = "power"
|
||||||
name_pretty = "Power"
|
name_pretty = "Power"
|
||||||
icon = "Power"
|
icon = "applications-other"
|
||||||
global_search = true
|
|
||||||
|
|
||||||
[[entries]]
|
[[entries]]
|
||||||
text = "Shutdown"
|
text = "Shutdown"
|
||||||
keywords = ["color", "picker", "hypr"]
|
keywords = ["turn", "off", "power", "shutdown"]
|
||||||
actions = { "cp_use" = "wl-copy $(hyprpicker)" }
|
actions = { "cp_use" = "shutdown -h now" }
|
||||||
icon = "system-shutdown"
|
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"
|
||||||
|
|||||||
@@ -18,14 +18,7 @@ previous = ["ctrl p", "Up"]
|
|||||||
quick_activate = []
|
quick_activate = []
|
||||||
|
|
||||||
[providers]
|
[providers]
|
||||||
default = [
|
default = ["desktopapplications", "calc", "runner", "websearch", "menus", "pw"]
|
||||||
"desktopapplications",
|
|
||||||
"calc",
|
|
||||||
"runner",
|
|
||||||
"websearch",
|
|
||||||
"menus",
|
|
||||||
"pw"
|
|
||||||
]
|
|
||||||
|
|
||||||
[[providers.prefixes]]
|
[[providers.prefixes]]
|
||||||
prefix = ";"
|
prefix = ";"
|
||||||
@@ -57,60 +50,19 @@ provider = "clipboard"
|
|||||||
|
|
||||||
[[providers.prefixes]]
|
[[providers.prefixes]]
|
||||||
prefix = "pw "
|
prefix = "pw "
|
||||||
provider = "pw"
|
provider = "menus:power"
|
||||||
|
|
||||||
[providers.actions]
|
[providers.actions]
|
||||||
|
fallback = [
|
||||||
|
{ action = "menus:open", label = "open", after = "Nothing" },
|
||||||
|
{ action = "erase_history", label = "clear hist", bind = "ctrl h", after = "AsyncReload" },
|
||||||
|
]
|
||||||
desktopapplications = [
|
desktopapplications = [
|
||||||
{ action = "start", default = true, bind = "Return" },
|
{ action = "start", default = true, bind = "Return" },
|
||||||
{ action = "start:keep", label = "open+next", bind = "shift Return", after = "KeepOpen" },
|
{ action = "start:keep", label = "open+next", bind = "shift Return", after = "KeepOpen" },
|
||||||
{ action = "erase_history", label = "clear hist", bind = "ctrl h", after = "AsyncReload" },
|
{ action = "erase_history", label = "clear hist", bind = "ctrl h", after = "AsyncReload" },
|
||||||
{ action = "pin", bind = "ctrl alt p", after = "AsyncReload" },
|
{ action = "pin", bind = "ctrl alt p", after = "Nothing" },
|
||||||
{ action = "unpin", bind = "ctrl alt p", after = "AsyncReload" },
|
{ action = "unpin", bind = "ctrl alt p", after = "Nothing" },
|
||||||
{ action = "pinup", bind = "ctrl n", after = "AsyncReload" },
|
{ action = "pinup", bind = "ctrl alt n", after = "Nothing" },
|
||||||
{ action = "pindown", bind = "ctrl m", after = "AsyncReload" },
|
{ 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
|
|
||||||
|
|||||||
Reference in New Issue
Block a user