hyprland: move to subdir

This commit is contained in:
makefu 2024-06-20 22:53:07 +02:00
parent d9339d8aaa
commit 5499ebeaf5
No known key found for this signature in database
GPG key ID: 36F7711F3FC0F225
9 changed files with 363 additions and 25 deletions

View file

@ -20,13 +20,12 @@ in
./pipewire.nix
# ./gnome.nix
# ./kde.nix
./hyprland.nix
./hyprland
];
# services.redshift.enable = true;
services.xserver = {
enable = true;
xkb.layout = "us";
xkb.variant = "altgr-intl";
xkb.options = "ctrl:nocaps, eurosign:e";

View file

@ -11,6 +11,7 @@ in
services.udev.packages = [ pkgs.gnome.gnome-settings-daemon ];
programs.gnome-terminal.enable = true;
services.xserver = {
enable = true;
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
#displayManager.autoLogin = {

View file

@ -1,8 +0,0 @@
{
programs.hyprland = {
# Install the packages from nixpkgs
enable = true;
# Whether to enable XWayland
xwayland.enable = true;
};
}

View file

@ -0,0 +1,68 @@
{ pkgs, config, ... }:
let
mainUser = config.krebs.build.user.name;
in {
imports = [
./kitty.nix
./flameshot.nix
];
# programs.hyprland.enable = true;
security.pam.services.hyprlock = {};
# security.pam.services.swaylock = {};
home-manager.users.${mainUser} = {
home.packages = with pkgs; [
dolphin
wofi
];
programs.hyprlock.enable = true;
# programs.swaylock.enable = true;
services.hypridle.enable = true;
programs.waybar.enable = true;
programs.waybar.systemd.enable = true;
services.network-manager-applet.enable = true;
home.pointerCursor = {
gtk.enable = true;
# x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 16;
};
wayland.windowManager.hyprland = {
enable = true;
extraConfig = builtins.readFile ./hyprland.conf;
xwayland.enable = true;
systemd.enable = true;
# settings = {
# bind =
# [
# "SUPER , F, exec, firefox"
# "SUPER SHIFT, c, killactive"
# ", Print, exec, grimblast copy area"
# ]
# ++ (
# # workspaces
# # binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
# builtins.concatLists (builtins.genList (
# x: let # 1..10
# ws = let
# c = (x + 1) / 10;
# in
# builtins.toString (x + 1 - (c * 10));
# in [
# "SUPER, ${ws}, workspace, ${toString (x + 1)}"
# "SUPER SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
# ]
# )
# 10)
# );
#};
};
};
}

View file

@ -0,0 +1,259 @@
autogenerated = 0 # remove this line to remove the warning
# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/
# Please note not all available settings / options are set here.
# For a full list, see the wiki
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
################
### MONITORS ###
################
# See https://wiki.hyprland.org/Configuring/Monitors/
#
# do not scale
monitor=,preferred,auto,1.0
# automatic scaling (1.25)
# monitor=,preferred,auto,auto
###################
### MY PROGRAMS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
$terminal = kitty
$fileManager = dolphin
$menu = wofi --show drun
#################
### AUTOSTART ###
#################
# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:
# exec-once = $terminal
# exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
#####################
### LOOK AND FEEL ###
#####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 1
gaps_out = 1
border_size = 1
# 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 = dwindle
}
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 0
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0
drop_shadow = false
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 3
passes = 1
vibrancy = 0.1696
}
}
# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
enabled = true
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.05, 0.05, 1.05
animation = windows, 1, 1.1, myBezier
animation = windowsOut, 1, 1.1, default, popin 80%
animation = border, 1, 1.0, default
animation = borderangle, 1, 1, default
animation = fade, 1, 1, default
animation = workspaces, 1, 1, default
}
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_is_master = true
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
}
#############
### INPUT ###
#############
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = us
kb_variant = altgr-intl
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
touchpad {
natural_scroll = false
}
}
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = true
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
name = epic-mouse-v1
sensitivity = -0.5
}
####################
### KEYBINDINGSS ###
####################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod SHIFT, C, killactive,
bind = $mainMod ,F, fullscreen,0
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, 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
# Toggle special workspace (scratchpad) similar to guake
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
# 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
# Media Keys
bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
##############################
### 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.

View file

@ -0,0 +1,23 @@
{ pkgs, config, ... }:
let
mainUser = config.krebs.build.user.name;
in {
# Terminal
home-manager.users.${mainUser} = {
programs.kitty = {
enable = true;
font = {
package = pkgs.terminus_font;
name = "Terminus";
size = 12;
};
settings = {
update_check_interval = 0;
enable_audio_bell = false;
scollback_lines = 100000;
confirm_os_window_close = 0;
copy_on_select = "yes";
};
};
};
}

View file

@ -0,0 +1,11 @@
{pkgs, ... }:
{
xdg.portal = {
enable = true;
xdgOpenUsePortal = true;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
pkgs.xdg-desktop-portal-gtk
];
};
}

View file

@ -1,15 +0,0 @@
{
# Terminal
home-manager.users.makefu = {
programs.kitty = {
enable = true;
font.package = pkgs.terminus_font;
settings = {
update_check_interval = 0;
enable_audio_bell = false;
scollback_lines = 100000;
confirm_os_window_close = 0;
};
};
};
}