partly add hyprland home module + bluetooth
This commit is contained in:
@@ -89,6 +89,11 @@ in
|
||||
hardware.graphics.enable32Bit = true;
|
||||
services.hardware.openrgb.enable = true;
|
||||
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = false;
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.grub.enable = true;
|
||||
boot.loader.grub.device = "nodev";
|
||||
@@ -240,6 +245,7 @@ in
|
||||
libxkbcommon # libxkbcommon.so.0
|
||||
libx11 # libX11.so.6
|
||||
wayland
|
||||
krb5
|
||||
]);
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
{
|
||||
imports = [
|
||||
./mpd.nix
|
||||
./programs.nix
|
||||
zen-browser.homeModules.beta
|
||||
];
|
||||
|
||||
@@ -54,12 +55,6 @@
|
||||
setAsDefaultBrowser = true;
|
||||
};
|
||||
|
||||
programs.yazi.enable = true;
|
||||
programs.yazi.enableFishIntegration = true;
|
||||
|
||||
programs.fzf.enable = true;
|
||||
programs.fzf.enableFishIntegration = true;
|
||||
|
||||
programs.eza = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
@@ -70,14 +65,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
programs.pywal = {
|
||||
enable = true;
|
||||
package = pkgs.pywal16;
|
||||
};
|
||||
|
||||
programs.lazygit.enable = true;
|
||||
programs.lazygit.enableFishIntegration = true;
|
||||
|
||||
programs.rbw = {
|
||||
enable = true;
|
||||
settings = {
|
||||
@@ -87,31 +74,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
programs.distrobox.enable = true;
|
||||
services.podman.enable = true;
|
||||
|
||||
programs.rofi.enable = true;
|
||||
programs.rofi.plugins = [ pkgs.rofi-calc ];
|
||||
|
||||
services.polkit-gnome.enable = true;
|
||||
services.cliphist.enable = true;
|
||||
programs.btop.enable = true;
|
||||
services.udiskie.enable = true;
|
||||
programs.cava.enable = true;
|
||||
programs.equibop.enable = true;
|
||||
services.awww.enable = true;
|
||||
services.mpdris2.enable = true;
|
||||
programs.fastfetch.enable = true;
|
||||
programs.prismlauncher.enable = true;
|
||||
programs.fd.enable = true;
|
||||
programs.uv.enable = true;
|
||||
programs.satty.enable = true;
|
||||
programs.mpvpaper.enable = true;
|
||||
programs.obsidian.enable = true;
|
||||
programs.gcc.enable = true;
|
||||
programs.mpv.enable = true;
|
||||
programs.imv.enable = true;
|
||||
programs.aria2.enable = true;
|
||||
programs.qutebrowser = {
|
||||
enable = true;
|
||||
settings = {
|
||||
@@ -166,12 +128,10 @@
|
||||
rm = "gomi";
|
||||
ssh = "kitty +kitten ssh";
|
||||
nd = "nix develop";
|
||||
df = "df -h -x tmpfs -x devtmpfs -x squashfs -x overlay -x efivarfs";
|
||||
};
|
||||
};
|
||||
|
||||
programs.zoxide.enable = true;
|
||||
programs.zoxide.enableFishIntegration = true;
|
||||
|
||||
home.file.".local/share/Steam/steam.cfg".text = ''
|
||||
BootStrapperInhibitAll=enable
|
||||
BootStrapperForceSelfUpdate=disable
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
imports = [
|
||||
./general.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,162 @@
|
||||
{ hyprsplit, ... }:
|
||||
|
||||
let
|
||||
# Replace these with your pywal colors or import them from another file.
|
||||
# wal = {
|
||||
# color11 = "#...";
|
||||
# color14 = "#...";
|
||||
# };
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
|
||||
device = [
|
||||
{
|
||||
name = "glorious-model-o-wireless";
|
||||
sensitivity = -1.0;
|
||||
}
|
||||
];
|
||||
|
||||
config = {
|
||||
input = {
|
||||
kb_layout = "de";
|
||||
follow_mouse = 1;
|
||||
repeat_delay = 300;
|
||||
repeat_rate = 35;
|
||||
scroll_factor = 1.3;
|
||||
sensitivity = -1.0;
|
||||
};
|
||||
|
||||
general = {
|
||||
gaps_in = 4;
|
||||
gaps_out = 12;
|
||||
border_size = 2;
|
||||
|
||||
# "col.active_border" = "rgb(${wal.color11}) rgb(${wal.color14}) 45deg";
|
||||
# "col.active_border" = "rgba(80808077) rgba(80808077) 45deg";
|
||||
|
||||
# "col.inactive_border" = "rgba(80808077) rgba(80808077) 45deg";
|
||||
|
||||
resize_on_border = false;
|
||||
allow_tearing = false;
|
||||
layout = "dwindle";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 2;
|
||||
|
||||
active_opacity = 0.65;
|
||||
inactive_opacity = 0.65;
|
||||
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 50;
|
||||
render_power = 4;
|
||||
color = "0xaf1a1a1a";
|
||||
};
|
||||
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 4;
|
||||
brightness = 0.473;
|
||||
contrast = 1.0;
|
||||
vibrancy = 0.1696;
|
||||
vibrancy_darkness = 0.2;
|
||||
ignore_opacity = true;
|
||||
popups = true;
|
||||
};
|
||||
};
|
||||
|
||||
master = {
|
||||
new_status = "master";
|
||||
new_on_top = true;
|
||||
mfact = 0.5;
|
||||
orientation = "center";
|
||||
};
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
disable_hyprland_logo = true;
|
||||
enable_anr_dialog = false;
|
||||
};
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
};
|
||||
};
|
||||
|
||||
# animations = {
|
||||
# enabled = false;
|
||||
# };
|
||||
|
||||
# bezier = [
|
||||
# "md3_standard,0.2,0,0,1"
|
||||
# "md3_decel,0.05,0.7,0.1,1"
|
||||
# "md3_accel,0.3,0,0.8,0.15"
|
||||
# "overshot,0.05,0.9,0.1,1.02"
|
||||
#
|
||||
# # Hyprland supports spring curves as strings.
|
||||
# "spring_snappy,1,80,16"
|
||||
#
|
||||
# "weighted_decel,0.05,0.9,0.1,1"
|
||||
# "snap_curve,0.1,1,0,1"
|
||||
# "winIn,0.1,1,0.1,1"
|
||||
# "winOut,0.1,1,0.1,1"
|
||||
# ];
|
||||
#
|
||||
# animation = [
|
||||
# "windows,1,4,spring_snappy"
|
||||
# "windowsIn,1,3,md3_decel,popin 70%"
|
||||
# "windowsOut,1,4,md3_accel,popin 70%"
|
||||
# "windowsMove,1,4,overshot"
|
||||
#
|
||||
# "fade,1,3,md3_decel"
|
||||
#
|
||||
# "layers,1,4.5,md3_standard,fade"
|
||||
# "layersIn,1,4.5,winIn,slide"
|
||||
# "layersOut,1,5,winOut,slide"
|
||||
#
|
||||
# "workspaces,1,5,md3_decel,slide"
|
||||
# "workspacesIn,1,7,winIn,slide"
|
||||
# "workspacesOut,1,7,winOut,slide"
|
||||
#
|
||||
# "specialWorkspace,1,4,winIn,slidevert"
|
||||
# ];
|
||||
};
|
||||
|
||||
extraLuaFiles = {
|
||||
# create a symlink to `.config/hypr/hyprsplit/init.lua`.
|
||||
"hyprsplit/init" = {
|
||||
autoLoad = false;
|
||||
content = builtins.readFile "${hyprsplit}/init.lua";
|
||||
};
|
||||
# Finally, use it directly in Lua.
|
||||
"hyprload" = {
|
||||
autoLoad = true;
|
||||
content = ''
|
||||
local hs = require("hyprsplit")
|
||||
hs.config({ num_workspaces = 10 })
|
||||
|
||||
local mod = "SUPER"
|
||||
|
||||
for i = 1, 10 do
|
||||
local key = (i == 10) and "0" or tostring(i)
|
||||
hl.bind(mod .. " + " .. key, hs.dsp.focus({ workspace = i }))
|
||||
hl.bind(mod .. " + " .. key, hs.dsp.window.move({ workspace = i }))
|
||||
hl.bind("SUPER + " .. key, hs.dsp.focus({ workspace = i }))
|
||||
hl.bind("SUPER + SHIFT + " .. key, hs.dsp.window.move({ workspace = i, follow = true }))
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
hl.monitor({ output = "DP-1", mode = "1920x1080@60", position = "3840x0", scale = "auto" })
|
||||
hl.monitor({ output = "DP-2", mode = "1920x1080@144", position = "1920x0", scale = "auto", bitdepth = 10 })
|
||||
hl.monitor({ output = "HDMI-A-1", mode = "1920x1080@60", position = "0x0", scale = "auto" })
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
window_rule = [
|
||||
# -----------------
|
||||
# Workspace
|
||||
# -----------------
|
||||
"workspace 24,title:^(rmpc)$"
|
||||
"workspace 10,class:^(equibop)$"
|
||||
|
||||
"monitor DP-1,title:^(rmpc)$"
|
||||
"monitor DP-1,class:^(equibop)$"
|
||||
|
||||
# -----------------
|
||||
# Windows
|
||||
# -----------------
|
||||
"opacity 1 0.999999,class:^(mpv)$"
|
||||
"opacity 0.99 override 0.99 override,class:^(obsidian)$"
|
||||
|
||||
# -----------------
|
||||
# Floating
|
||||
# -----------------
|
||||
"float,class:^(imv)$"
|
||||
"float,class:^(nemo)$"
|
||||
"float,class:.*,title:^(Open File.*)$"
|
||||
"float,title:^(Picture-in-Picture)$"
|
||||
"float,class:^(rofi)$"
|
||||
"float,class:^(xdg-desktop-portal-gtk)$"
|
||||
"float,title:^(Steam Settings)$"
|
||||
"float,title:^(Friends List)$"
|
||||
"float,title:^(nvim)$"
|
||||
"float,class:^(org.gnome.FileRoller)$"
|
||||
"float,class:^(org.gnome.Decibels)$"
|
||||
"float,class:^(neovide)$"
|
||||
"float,class:^(org.prismlauncher.PrismLauncher)$"
|
||||
"float,class:^(feh)$"
|
||||
"float,class:^(com.github.aliencoweatcake.imageviewer)$"
|
||||
"float,class:^(waypaper)$"
|
||||
|
||||
# -----------------
|
||||
# Scrolling
|
||||
# -----------------
|
||||
"scrollmouse 1.0,class:^(Minecraft.*)$"
|
||||
"scrollmouse 1.0,class:^(Lunar.*)$"
|
||||
"scrollmouse 1.0,class:^(LiquidBounce.*)$"
|
||||
"scrollmouse 1.0,class:^(Nomifactory.*)$"
|
||||
"scrollmouse 1.0,class:^(GT.*)$"
|
||||
|
||||
# -----------------
|
||||
# Center
|
||||
# -----------------
|
||||
"center,class:^(imv)$"
|
||||
"center,class:^(nemo)$"
|
||||
"center,class:^(org.prismlauncher.PrismLauncher)$"
|
||||
|
||||
# -----------------
|
||||
# Size
|
||||
# -----------------
|
||||
"size 1200 700,class:^(imv)$"
|
||||
"size 1200 700,class:^(nemo)$"
|
||||
"size 1200 700,title:^(nvim)$"
|
||||
"size 1200 700,class:^(org.gnome.Decibels)$"
|
||||
"size 1200 700,class:^(neovide)$"
|
||||
"size 1200 700,class:^(org.prismlauncher.PrismLauncher)$"
|
||||
"size 1200 700,class:^(waypaper)$"
|
||||
|
||||
"suppressevent maximize,class:.*"
|
||||
|
||||
# -----------------
|
||||
# Opaque
|
||||
# -----------------
|
||||
"opaque,class:^(kitty)$"
|
||||
"opaque,class:^(nemo)$"
|
||||
"opaque,class:^(virt-manager)$"
|
||||
"opaque,class:^(rofi)$"
|
||||
"opaque,class:^(looking-glass-client)$"
|
||||
"opaque,class:^(steam)$"
|
||||
"opaque,class:^(equibop)$"
|
||||
"opaque,initialtitle:^(Zen Browser)$"
|
||||
"opaque,class:^(org.qutebrowser.qutebrowser)$"
|
||||
"opaque,class:^(gimp)$"
|
||||
"opaque,class:^(discord)$"
|
||||
"opaque,class:^(librewolf)$"
|
||||
"opaque,class:^(imv)$"
|
||||
"opaque,class:^(org.gnome.Decibels)$"
|
||||
"opaque,class:^(neovide)$"
|
||||
"opaque,class:^(Tor Browser)$"
|
||||
"opaque,class:^(com.ayugram.desktop)$"
|
||||
"opaque,title:^(Software Manager)$"
|
||||
"opaque,class:^(waypaper)$"
|
||||
"opaque,class:^(mpv)$"
|
||||
"opaque,class:^(helium)$"
|
||||
"opaque,class:^(Spotify)$"
|
||||
|
||||
# -----------------
|
||||
# Kando
|
||||
# -----------------
|
||||
"noblur,class:^(kando)$"
|
||||
"opaque,class:^(kando)$"
|
||||
"size 100% 100%,class:^(kando)$"
|
||||
"bordersize 0,class:^(kando)$"
|
||||
"noanim,class:^(kando)$"
|
||||
"float,class:^(kando)$"
|
||||
"pin,class:^(kando)$"
|
||||
];
|
||||
|
||||
layerrule = [
|
||||
"blur,rofi"
|
||||
"noanim,hyprpicker"
|
||||
"noanim,selection"
|
||||
|
||||
"noscreenshare,notifications"
|
||||
"blur,notifications"
|
||||
"ignorealpha 1,notifications"
|
||||
|
||||
"blur,wofi"
|
||||
|
||||
"dimaround,rofi"
|
||||
|
||||
"noanim,^dms$"
|
||||
"noscreenshare,dms:notification-popup"
|
||||
|
||||
"noanim,noctalia-background-.*$"
|
||||
"ignorealpha 0.5,noctalia-background-.*$"
|
||||
"blur,noctalia-background-.*$"
|
||||
"blurpopups,noctalia-background-.*$"
|
||||
|
||||
"noscreenshare,noctalia-notifications-.*$"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.yazi.enable = true;
|
||||
programs.yazi.enableFishIntegration = true;
|
||||
|
||||
programs.fzf.enable = true;
|
||||
programs.fzf.enableFishIntegration = true;
|
||||
|
||||
programs.lazygit.enable = true;
|
||||
programs.lazygit.enableFishIntegration = true;
|
||||
|
||||
programs.zoxide.enable = true;
|
||||
programs.zoxide.enableFishIntegration = true;
|
||||
|
||||
programs.distrobox.enable = true;
|
||||
services.podman.enable = true;
|
||||
|
||||
programs.rofi.enable = true;
|
||||
programs.rofi.plugins = [ pkgs.rofi-calc ];
|
||||
|
||||
services.polkit-gnome.enable = true;
|
||||
services.cliphist.enable = true;
|
||||
programs.btop.enable = true;
|
||||
services.udiskie.enable = true;
|
||||
programs.cava.enable = true;
|
||||
programs.equibop.enable = true;
|
||||
services.awww.enable = true;
|
||||
services.mpdris2.enable = true;
|
||||
programs.fastfetch.enable = true;
|
||||
programs.prismlauncher.enable = true;
|
||||
programs.fd.enable = true;
|
||||
programs.uv.enable = true;
|
||||
programs.satty.enable = true;
|
||||
programs.mpvpaper.enable = true;
|
||||
programs.obsidian.enable = true;
|
||||
programs.gcc.enable = true;
|
||||
programs.mpv.enable = true;
|
||||
programs.imv.enable = true;
|
||||
programs.aria2.enable = true;
|
||||
|
||||
programs.pywal = {
|
||||
enable = true;
|
||||
package = pkgs.pywal16;
|
||||
};
|
||||
}
|
||||
@@ -59,6 +59,8 @@
|
||||
losslesscut
|
||||
tree
|
||||
stow
|
||||
bluetui
|
||||
file-roller
|
||||
];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
|
||||
Reference in New Issue
Block a user