18 Commits

Author SHA1 Message Date
90591b9bec added the gdlauncher to default packages 2026-03-07 12:24:37 +01:00
b9a1b01f21 direnv is now silent. lets see how this goes 2026-03-03 16:22:24 +01:00
1c2ce8b116 using the module instead because it sets up the shell configuration 2026-03-03 16:15:02 +01:00
ea59469b7d added direnv to my applications 2026-03-03 16:03:32 +01:00
18814bda3a hyprland exit does take now another key to activate so it wont be pressed accidentally 2026-02-25 14:48:50 +01:00
910ad36424 yaml files always use 2 spaces now 2026-02-24 17:52:39 +01:00
a2d8313573 zen flake input removed the binary name just zen. fixed that up by replacing autostart with zen-beta 2026-02-22 18:22:34 +01:00
ba084e9ca1 Added elements desktop to test out matrix.org 2026-02-15 15:15:26 +01:00
3b54a08428 baobab is now part of the applications 2026-02-05 18:41:31 +01:00
dc6dffa481 treesitter#2036 changed the way to configure treesitter. adjusted config for this 2026-02-05 17:37:01 +01:00
f0757d76b9 steam is starting in the background on startup now 2026-02-04 12:45:24 +01:00
f7414132fe hyprland also auto starts discord now 2026-02-04 12:38:53 +01:00
91806843ee configured preferred split direction to vertical. closes #17 2026-02-03 12:20:46 +01:00
9abadc0d8f fixed conflict. still relevant to #16 2026-02-03 12:11:21 +01:00
ac54b67744 fixed application starting. Still related to #14 2026-02-02 16:45:21 +01:00
95b3d087a3 Merge pull request #15 from quirinecker/14-hyprland-auto-open-on-specific-workspaces-is-not-working-reliable
windowrule fixed this. it works again
2026-02-01 21:12:57 +01:00
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
8 changed files with 73 additions and 97 deletions

38
flake.lock generated
View File

@@ -3,20 +3,16 @@
"elephant": { "elephant": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"walker",
"nixpkgs" "nixpkgs"
], ],
"systems": [ "systems": "systems"
"walker",
"systems"
]
}, },
"locked": { "locked": {
"lastModified": 1759675127, "lastModified": 1769329000,
"narHash": "sha256-AsYUdOukKNXIu47CpQNJeAccu524sIj9UTuP9Aadycs=", "narHash": "sha256-0vibWqmCsG1t4xL2euR6PScB3M4QZigB5JGl+BIH4NY=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "elephant", "repo": "elephant",
"rev": "abfa18c844f1028b0b2beef456fee6d40e98dfad", "rev": "1988112d1f54dd76e8a90f551945df763586bdad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -27,7 +23,7 @@
}, },
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1731533236, "lastModified": 1731533236,
@@ -104,6 +100,7 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"elephant": "elephant",
"nix-options-doc": "nix-options-doc", "nix-options-doc": "nix-options-doc",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"walker": "walker", "walker": "walker",
@@ -132,6 +129,21 @@
} }
}, },
"systems": { "systems": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
"owner": "nix-systems",
"repo": "default-linux",
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default-linux",
"type": "github"
}
},
"systems_2": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@@ -146,7 +158,7 @@
"type": "github" "type": "github"
} }
}, },
"systems_2": { "systems_3": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@@ -163,11 +175,13 @@
}, },
"walker": { "walker": {
"inputs": { "inputs": {
"elephant": "elephant", "elephant": [
"elephant"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"systems": "systems_2" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1760434150, "lastModified": 1760434150,

View File

@@ -30,18 +30,10 @@
indent_size = 2; indent_size = 2;
}; };
"*.yaml" = { "*.yaml" = {
indent_style = "space";
indent_size = 4;
};
"*.yml" = {
indent_style = "space";
indent_size = 4;
};
"compose.yml" = {
indent_style = "space"; indent_style = "space";
indent_size = 2; indent_size = 2;
}; };
"compose.yaml" = { "*.yml" = {
indent_style = "space"; indent_style = "space";
indent_size = 2; indent_size = 2;
}; };

View File

@@ -9,20 +9,7 @@ let
in in
{ {
options = { options = {
modules.hyprland.enable = lib.mkOption { modules.hyprland.enable = lib.mkEnableOption "hyprland";
type = lib.types.bool;
default = false;
description = ''
Whether to enable the hyprland configuration module.
Warning: This does not include the installation of hyprland itself.
recommended dependencies:
hyprpaper
hypridle
hyprlock
hyprshot
https://github.com/WhySoBad/hyprland-preview-share-picker/tree/master
'';
};
}; };
config = lib.mkIf config.modules.hyprland.enable { config = lib.mkIf config.modules.hyprland.enable {
@@ -35,7 +22,6 @@ in
"hypr/hyprpaper.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hyprpaper.conf; "hypr/hyprpaper.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hyprpaper.conf;
"hypr/hypridle.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hypridle.conf; "hypr/hypridle.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hypridle.conf;
"hypr/hyprlock.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hyprlock.conf; "hypr/hyprlock.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/hyprlock.conf;
"hypr/xdph.conf".source = config.lib.file.mkOutOfStoreSymlink ./hyprland/xdph.conf;
"backgrounds".source = config.lib.file.mkOutOfStoreSymlink ./backgrounds; "backgrounds".source = config.lib.file.mkOutOfStoreSymlink ./backgrounds;
"hypr/nix.conf".text = '' "hypr/nix.conf".text = ''

View File

@@ -26,7 +26,7 @@ source = ~/.config/hypr/nix.conf
# Set programs that you use # Set programs that you use
$terminal = ghostty $terminal = ghostty
$fileManager = nautilus $fileManager = nautilus
$browser = zen $browser = zen-beta
$menu = walker $menu = walker
################# #################
@@ -42,17 +42,17 @@ 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. # 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 = ~/.config/hypr/scripts/gpu-screen-recorder/start-replay.sh
exec-once = spotify & signal-desktop & thunderbird & gnome-calendar & bitwarden & $browser & discord & steam-silent
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 3 silent] errands
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
@@ -216,7 +216,7 @@ bind = $mainMod, T, exec, $terminal
bind = $mainMod, B, exec, $browser bind = $mainMod, B, exec, $browser
bind = $mainMod, I, exec, hyprpanel toggleWindow bar-0 bind = $mainMod, I, exec, hyprpanel toggleWindow bar-0
bind = $mainMod, C, killactive, bind = $mainMod, C, killactive,
bind = $mainMod, Q, exit, bind = $mainMod SHIFT, Q, exit,
bind = $mainMod, F, fullscreen, 1 bind = $mainMod, F, fullscreen, 1
bind = $mainMod ALT, F, fullscreen, 0 bind = $mainMod ALT, F, fullscreen, 0
bind = $mainMod, E, exec, $fileManager bind = $mainMod, E, exec, $fileManager
@@ -289,25 +289,3 @@ bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindl=, XF86AudioPlay, exec, playerctl play-pause # the stupid key is called play , but it toggles bindl=, XF86AudioPlay, exec, playerctl play-pause # the stupid key is called play , but it toggles
bindl=, XF86AudioNext, exec, playerctl next bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous bindl=, XF86AudioPrev, exec, playerctl previous
##############################
### WINDOWS AND WORKSPACES ###
##############################
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
# windowrulev2 = noanim,class:ulauncher
windowrulev2 = noborder,class:ulauncher
windowrulev2 = noblur,class:ulauncher
windowrulev2 = noshadow,class:ulauncher
# layerrule = blur, wofi
# layerrule = blur, waybar

View File

@@ -1,3 +0,0 @@
screencopy {
custom_picker_binary = hyprland-preview-share-picker
}

View File

@@ -36,3 +36,5 @@ vim.opt.showtabline = 1
-- remove indicators above statusline -- remove indicators above statusline
vim.opt.showmode = false vim.opt.showmode = false
vim.opt.diffopt = "vertical"

View File

@@ -4,7 +4,7 @@ return {
build = ':TSUpdate', build = ':TSUpdate',
event = { "BufReadPost", "BufNewFile" }, event = { "BufReadPost", "BufNewFile" },
config = function() config = function()
require("nvim-treesitter.configs").setup { require("nvim-treesitter").setup {
ensure_installed = { ensure_installed = {
"lua", "lua",
"typescript", "typescript",
@@ -26,35 +26,31 @@ return {
}, },
indent = { indent = {
enable = true enable = true
},
textobjects = {
select = {
enable = true,
lookahead = true, -- Automatically jump forward to textobj, similar to targets.vim
keymaps = {
-- You can use the capture groups defined in textobjects.scm
["afn"] = "@function.outer",
["ifn"] = "@function.inner",
["acl"] = "@class.outer",
["icl"] = "@class.inner",
["icm"] = "@comment.inner",
["acm"] = "@comment.outer",
["ib"] = "@block.inner",
["ab"] = "@block.outer",
["la"] = "@assignment.lhs",
["ra"] = "@assignment.lhs"
},
}
} }
} }
end, end,
dependencies = { dependencies = {
{ {
"nvim-treesitter/nvim-treesitter-textobjects", "nvim-treesitter/nvim-treesitter-textobjects",
config = function()
require("nvim-treesitter.configs").setup {
textobjects = {
select = {
enable = true,
lookahead = true, -- Automatically jump forward to textobj, similar to targets.vim
keymaps = {
-- You can use the capture groups defined in textobjects.scm
["afn"] = "@function.outer",
["ifn"] = "@function.inner",
["acl"] = "@class.outer",
["icl"] = "@class.inner",
["icm"] = "@comment.inner",
["acm"] = "@comment.outer",
["ib"] = "@block.inner",
["ab"] = "@block.outer",
["la"] = "@assignment.lhs",
["ra"] = "@assignment.lhs"
},
}
}
}
end
}, },
} }
}, },

View File

@@ -29,6 +29,9 @@
}; };
}; };
programs.direnv.enable = true;
programs.direnv.silent = true;
home.packages = [ home.packages = [
# note taking # note taking
@@ -44,7 +47,9 @@
pkgs.steam-run pkgs.steam-run
pkgs.sops pkgs.sops
pkgs.pavucontrol pkgs.pavucontrol
pkgs.errands
# https://github.com/quirinecker/dotfiles-modules/issues/13
# pkgs.errands
# editors # editors
# pkgs.zed-editor # updating softwar crashed the pc. Not in use right now anyway. disabled for now # pkgs.zed-editor # updating softwar crashed the pc. Not in use right now anyway. disabled for now
@@ -73,9 +78,11 @@
pkgs.gnome-system-monitor pkgs.gnome-system-monitor
pkgs.geary pkgs.geary
pkgs.nautilus pkgs.nautilus
pkgs.baobab
# social # social
pkgs.discord pkgs.discord
pkgs.element-desktop
pkgs.signal-desktop pkgs.signal-desktop
pkgs.spotify pkgs.spotify
@@ -84,6 +91,10 @@
pkgs.python3 pkgs.python3
pkgs.typescript pkgs.typescript
pkgs.typst pkgs.typst
# Gaming
pkgs.gdlauncher-carbon # Minecraft Launcher for mods and vanilla
]; ];
}; };
} }