Compare commits
5 Commits
5fd792084c
...
0197faa345
Author | SHA1 | Date | |
---|---|---|---|
0197faa345 | |||
5839002d3c | |||
ea305e701c | |||
43cabd5a62 | |||
b499c581d0 |
@ -80,6 +80,9 @@
|
||||
export GTK_PATH=/usr/lib/gtk-3.0
|
||||
nix shell nixpkgs#gcc11 --command matlab -desktop -sd "/home/julian/dev/matlab-gram" -softwareopengl
|
||||
'')
|
||||
(pkgs.writeShellScriptBin "expenses-tracker" ''
|
||||
java -jar /home/julian/dev/expensestracker/app/build/libs/app.jar
|
||||
'')
|
||||
|
||||
zotero
|
||||
xfce.mousepad
|
||||
|
@ -35,6 +35,6 @@ in
|
||||
".config/alacritty/alacritty.toml".source = ./alacritty.toml;
|
||||
};
|
||||
|
||||
home.sessionVariables.TERMINAL = "alacritty";
|
||||
systemd.user.sessionVariables.TERMINAL = "alacritty";
|
||||
};
|
||||
}
|
||||
|
@ -1,22 +1,23 @@
|
||||
{
|
||||
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||
# as well as the libraries available from your flake's inputs.
|
||||
lib,
|
||||
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||
pkgs,
|
||||
# You also have access to your flake's inputs.
|
||||
inputs,
|
||||
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||
# as well as the libraries available from your flake's inputs.
|
||||
lib,
|
||||
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||
pkgs,
|
||||
# You also have access to your flake's inputs.
|
||||
inputs,
|
||||
|
||||
# Additional metadata is provided by Snowfall Lib.
|
||||
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||
format, # A normalized name for the system target (eg. `iso`).
|
||||
virtual
|
||||
, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||
systems, # An attribute map of your defined hosts.
|
||||
# Additional metadata is provided by Snowfall Lib.
|
||||
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||
format, # A normalized name for the system target (eg. `iso`).
|
||||
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||
systems, # An attribute map of your defined hosts.
|
||||
|
||||
# All other arguments come from the module system.
|
||||
config, ... }:
|
||||
# All other arguments come from the module system.
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
@ -24,10 +25,15 @@ let
|
||||
cfg = config.modules.emacs;
|
||||
doomRepoUrl = "https://github.com/doomemacs/doomemacs";
|
||||
configRepoUrl = "https://gitlab.julian-mutter.de/julian/emacs-config";
|
||||
in {
|
||||
options.modules.emacs = { enable = mkOption { default = false; }; };
|
||||
in
|
||||
{
|
||||
options.modules.emacs = {
|
||||
enable = mkOption { default = false; };
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.sessionPath = [ "/home/julian/.config/emacs/bin" ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
emacs
|
||||
binutils # native-comp needs 'as', provided by this
|
||||
@ -42,7 +48,14 @@ in {
|
||||
zstd # for undo-fu-session/undo-tree compression
|
||||
|
||||
## Module dependencies
|
||||
(aspellWithDicts (ds: with ds; [ en en-computers en-science de ]))
|
||||
(aspellWithDicts (
|
||||
ds: with ds; [
|
||||
en
|
||||
en-computers
|
||||
en-science
|
||||
de
|
||||
]
|
||||
))
|
||||
sqlite
|
||||
|
||||
# Code formatters for use with doom emacs
|
||||
@ -60,14 +73,13 @@ in {
|
||||
emacs-all-the-icons-fonts
|
||||
];
|
||||
|
||||
home.activation.installDoomEmacs =
|
||||
lib.home-manager.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||
if [ ! -d "/home/julian/.config/emacs" ]; then
|
||||
$DRY_RUN_CMD ${pkgs.git}/bin/git clone --depth=1 --single-branch "${doomRepoUrl}" "/home/julian/.config/emacs"
|
||||
fi
|
||||
if [ ! -d "/home/julian/.config/doom" ]; then
|
||||
$DRY_RUN_CMD ${pkgs.git}/bin/git clone "${configRepoUrl}" "/home/julian/.config/doom"
|
||||
fi
|
||||
'';
|
||||
home.activation.installDoomEmacs = lib.home-manager.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||
if [ ! -d "/home/julian/.config/emacs" ]; then
|
||||
$DRY_RUN_CMD ${pkgs.git}/bin/git clone --depth=1 --single-branch "${doomRepoUrl}" "/home/julian/.config/emacs"
|
||||
fi
|
||||
if [ ! -d "/home/julian/.config/doom" ]; then
|
||||
$DRY_RUN_CMD ${pkgs.git}/bin/git clone "${configRepoUrl}" "/home/julian/.config/doom"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -51,21 +51,6 @@ in
|
||||
grimblast
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"hypr/launch".source = ./launch;
|
||||
# "hypr/hyprland.conf".source = ./hyprland.conf;
|
||||
"hypr/colors.conf" = {
|
||||
text = ''
|
||||
general {
|
||||
col.active_border = 0xff${palette.base0C} 0xff${palette.base0D} 270deg
|
||||
col.inactive_border = 0xff${palette.base00}
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
# services.copyq.enable = true;
|
||||
|
||||
# services.hypridle = {
|
||||
# enable = true;
|
||||
# settings = {
|
||||
@ -135,26 +120,13 @@ in
|
||||
gaps_in = 5;
|
||||
gaps_out = 5;
|
||||
|
||||
# border_size = 2
|
||||
layout = "dwindle";
|
||||
|
||||
# # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
# col.inactive_border = rgba(595959aa)
|
||||
|
||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||
# resize_on_border = false
|
||||
|
||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||
# allow_tearing = false
|
||||
|
||||
layout = "master";
|
||||
col.active_border = "0xff${palette.base0C} 0xff${palette.base0D} 270deg";
|
||||
col.inactive_border = "0xff${palette.base00}";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
# power saving
|
||||
# blur = {
|
||||
# enable = false;
|
||||
# };
|
||||
# power saving
|
||||
drop_shadow = false;
|
||||
};
|
||||
@ -186,6 +158,7 @@ in
|
||||
# Input
|
||||
input = {
|
||||
kb_layout = "de";
|
||||
natural_scroll = "yes";
|
||||
};
|
||||
|
||||
# Window rules
|
||||
@ -225,7 +198,7 @@ in
|
||||
"$mod, F, fullscreen,"
|
||||
"$mod, X, killactive,"
|
||||
|
||||
"$mod, R, togglesplit," # dwindle
|
||||
"$mod, O, togglesplit," # dwindle
|
||||
"$mod, P, pseudo," # dwindle
|
||||
|
||||
# opening applications
|
||||
|
@ -1,140 +0,0 @@
|
||||
source = ~/.config/hypr/colors.conf
|
||||
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=Unknown-1,disable # Freaking ghost monitor after update
|
||||
exec-once = exec ~/.config/hypr/launch
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
kb_options = caps:escape
|
||||
|
||||
sensitivity = -0.5 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 20
|
||||
border_size = 3
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled=1
|
||||
# bezier=overshot,0.05,0.9,0.1,1.1
|
||||
bezier=overshot,0.13,0.99,0.29,1.1
|
||||
animation=windows,1,4,overshot,slide
|
||||
animation=fade,1,10,default
|
||||
animation=workspaces,1,6,overshot,slide
|
||||
|
||||
bezier = linear, 0.0, 0.0, 1.0, 1.iii0
|
||||
animation = borderangle, 1, 100, linear, loop
|
||||
}
|
||||
dwindle {
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = on
|
||||
}
|
||||
|
||||
$mainMod = SUPER
|
||||
bind = $mainMod, RETURN, exec, foot
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, SPACE, togglefloating,
|
||||
bind = $mainMod, P, exec, wofi --show drun
|
||||
bind = $mainMod, F, fullscreen
|
||||
bind = $mainMod, TAB, pseudo
|
||||
|
||||
bind = $mainMod_SHIFT, E, exec, wlogout -b 1 -p layer-shell
|
||||
bind = $mainMod_SHIFT, Q, exec, gtklock
|
||||
bind = $mainMod_SHIFT, C, exec, wallpaper
|
||||
|
||||
bind = , code:107, exec, screenshot
|
||||
bind = $mainMod, code:107, exec, screenshot-edit
|
||||
|
||||
bindl = , code:127, exec, wpctl set-volume @DEFAULT_SOURCE@ 100%
|
||||
bindrl = , code:127, exec, wpctl set-volume @DEFAULT_SOURCE@ 0%
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, h, movefocus, l
|
||||
bind = $mainMod, l, movefocus, r
|
||||
bind = $mainMod, k, movefocus, u
|
||||
bind = $mainMod, j, movefocus, d
|
||||
|
||||
# Move window with mainMod_SHIFT + arrow keys
|
||||
bind = $mainMod_SHIFT, h, movewindow, l
|
||||
bind = $mainMod_SHIFT, l, movewindow, r
|
||||
bind = $mainMod_SHIFT, k, movewindow, u
|
||||
bind = $mainMod_SHIFT, j, movewindow, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Audio binds
|
||||
binde=, XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||
binde=, XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||
|
||||
# Per device settings
|
||||
# device:elan-touchpad {
|
||||
# accel_profile = adaptive
|
||||
# sensitivity = -0.3
|
||||
# }
|
||||
|
||||
# Extra window rules
|
||||
|
||||
# Allow hiding xwaylandvideobridge window correctly
|
||||
windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$
|
||||
windowrulev2 = noanim,class:^(xwaylandvideobridge)$
|
||||
windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
|
||||
windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$
|
||||
windowrulev2 = noblur,class:^(xwaylandvideobridge)$
|
@ -1,5 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
rm -rf $XDG_RUNTIME_DIR/swww.socket
|
||||
|
||||
swww init & waybar & mako & xwaylandvideobridge
|
@ -21,24 +21,18 @@ in
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
mako
|
||||
libnotify
|
||||
];
|
||||
|
||||
xdg.configFile."mako/config" = {
|
||||
text = ''
|
||||
background-color=#${palette.base00}
|
||||
text-color=#${palette.base05}
|
||||
border-color=#${palette.base0D}
|
||||
progress-color=over #${palette.base02}
|
||||
home.packages = with pkgs; [ libnotify ];
|
||||
|
||||
services.mako = {
|
||||
enable = true;
|
||||
bakgroundColor = "#${palette.base00}";
|
||||
textColor = "#${palette.base05}";
|
||||
borderColor = "#${palette.base0D}";
|
||||
progressColor = "over #${palette.base02}";
|
||||
extraConfig = ''
|
||||
[urgency=high]
|
||||
border-color=#${palette.base09}
|
||||
'';
|
||||
onChange = ''
|
||||
${pkgs.busybox}/bin/pkill -SIGUSR2 mako
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user