update
This commit is contained in:
parent
8955705261
commit
ec97ec7d6f
20
flake.nix
20
flake.nix
|
@ -34,6 +34,11 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
ags = {
|
||||
url = "github:Aylur/ags";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
gruvbox-kvantum = {
|
||||
url = "github:thefallnn/Gruvbox-Kvantum";
|
||||
flake = false;
|
||||
|
@ -63,11 +68,6 @@
|
|||
url = "github:SylEleuth/gruvbox-plus-icon-pack";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
ags = {
|
||||
url = "github:Aylur/ags";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
@ -90,10 +90,6 @@
|
|||
|
||||
overlays = [
|
||||
self.overlays.default
|
||||
inputs.chaotic-nyx.overlays.default
|
||||
inputs.hyprland-contrib.overlays.default
|
||||
inputs.hyprpicker.overlays.default
|
||||
inputs.nixd.overlays.default
|
||||
];
|
||||
};
|
||||
in {
|
||||
|
@ -113,12 +109,14 @@
|
|||
home-manager = {
|
||||
useUserPackages = true;
|
||||
users.manuel = import ./user/home.nix;
|
||||
extraSpecialArgs = {inherit inputs;};
|
||||
extraSpecialArgs = {
|
||||
inherit inputs;
|
||||
inherit system;
|
||||
};
|
||||
useGlobalPkgs = true;
|
||||
};
|
||||
}
|
||||
inputs.chaotic-nyx.nixosModules.default
|
||||
inputs.hyprland.nixosModules.default
|
||||
];
|
||||
};
|
||||
};
|
||||
|
|
|
@ -25,6 +25,5 @@
|
|||
version = "1";
|
||||
src = inputs.nvim-hmts;
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
fetchFromGitHub,
|
||||
inputs,
|
||||
gtk3,
|
||||
fd,
|
||||
gnome-icon-theme,
|
||||
hicolor-icon-theme,
|
||||
}:
|
||||
|
@ -13,22 +12,15 @@ stdenvNoCC.mkDerivation rec {
|
|||
|
||||
src = inputs.gruvbox-plus-icon-pack;
|
||||
|
||||
nativeBuildInputs = [gtk3 fd];
|
||||
nativeBuildInputs = [gtk3];
|
||||
|
||||
propagatedBuildInputs = [gnome-icon-theme hicolor-icon-theme];
|
||||
|
||||
installPhase = ''
|
||||
cd Gruvbox-Plus-Dark
|
||||
fd " " -X rm
|
||||
mkdir -p $out/share/icons/Gruvbox-Plus-Dark
|
||||
cp -r * $out/share/icons/Gruvbox-Plus-Dark
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
for i in $out/share/icons/*; do
|
||||
gtk-update-icon-cache $i
|
||||
done
|
||||
'';
|
||||
|
||||
dontDropIconThemeCache = true;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
diff --git a/CMake/Utils/MyGUIConfigTargets.cmake b/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
index 871ef84b9..6a594cfe4 100644
|
||||
--- a/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
+++ b/CMake/Utils/MyGUIConfigTargets.cmake
|
||||
@@ -421,15 +421,6 @@ function(mygui_config_lib PROJECTNAME)
|
||||
# add GCC visibility flags to shared library build
|
||||
target_compile_options(${PROJECTNAME} PRIVATE ${MYGUI_GCC_VISIBILITY_OPTIONS})
|
||||
target_compile_definitions(${PROJECTNAME} PRIVATE ${MYGUI_GCC_VISIBILITY_DEFINITIONS})
|
||||
- if (APPLE)
|
||||
- # deal with Mac OS X's framework system
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES FRAMEWORK TRUE)
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES PUBLIC_HEADER "${${PROJECTNAME}_HEADERS}")
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES OUTPUT_NAME ${PROJECTNAME})
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES BUILD_WITH_INSTALL_NAME_DIR TRUE)
|
||||
- set_target_properties(${PROJECTNAME} PROPERTIES INSTALL_NAME_DIR "@executable_path/../lib")
|
||||
- endif (APPLE)
|
||||
endif ()
|
||||
endif (MYGUI_STATIC)
|
||||
mygui_install_target(${PROJECTNAME} "")
|
|
@ -35,10 +35,9 @@
|
|||
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
configurationLimit = 5;
|
||||
configurationLimit = 10;
|
||||
consoleMode = "max";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
];
|
||||
|
||||
boot.initrd.availableKernelModules = ["nvme"];
|
||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||
boot.initrd.kernelModules = ["amdgpu"];
|
||||
boot.kernelModules = ["kvm-amd"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
extraPackages = [pkgs.libvdpau-va-gl];
|
||||
driSupport32Bit = true;
|
||||
};
|
||||
chaotic.mesa-git.enable = true;
|
||||
# chaotic.mesa-git.enable = true;
|
||||
|
||||
hardware.steam-hardware.enable = true;
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
{
|
||||
imports = [
|
||||
./avahi
|
||||
./locate
|
||||
|
@ -11,6 +11,7 @@
|
|||
services = {
|
||||
blueman.enable = true;
|
||||
flatpak.enable = true;
|
||||
fwupd.enable = true;
|
||||
gnome.gnome-keyring.enable = true;
|
||||
gvfs.enable = true;
|
||||
openssh.enable = true;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{pkgs, ...}: {
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
config.common.default = "*";
|
||||
xdgOpenUsePortal = true;
|
||||
wlr.enable = false; #conflict with XDPH if enabled
|
||||
extraPortals = [pkgs.xdg-desktop-portal-gtk];
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
programs.beets = {
|
||||
enable = true;
|
||||
enable = true; #until fixed
|
||||
|
||||
settings = {
|
||||
plugins = "duplicates ftintitle fetchart embedart chroma edit replaygain badfiles fish";
|
||||
|
|
|
@ -57,7 +57,6 @@
|
|||
e = "nvim";
|
||||
ls = "${pkgs.eza}/bin/eza --icons";
|
||||
ll = "${pkgs.eza}/bin/eza --icons -l";
|
||||
nf = "${pkgs.fastfetch}/bin/fastfetch";
|
||||
r = "${pkgs.ranger}/bin/ranger";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
platformTheme = "gtk";
|
||||
};
|
||||
|
||||
xdg.configFile."Kvantum/kvantum.kvconfig".text = "theme=gruvbox-kvantum";
|
||||
xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.kvconfig".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.kvconfig";
|
||||
xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.svg".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.svg";
|
||||
# xdg.configFile."Kvantum/kvantum.kvconfig".text = "theme=gruvbox-kvantum";
|
||||
# xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.kvconfig".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.kvconfig";
|
||||
# xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.svg".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.svg";
|
||||
}
|
||||
|
|
|
@ -53,6 +53,8 @@
|
|||
enable = true;
|
||||
|
||||
settings = {
|
||||
lyrics_fetchers = "musixmatch, sing365, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, zeneszoveg, internet";
|
||||
|
||||
visualizer_data_source = "/tmp/mpd.fifo";
|
||||
visualizer_output_name = "my_fifo";
|
||||
visualizer_in_stereo = true;
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -13,12 +13,12 @@ from './js/utils.js';
|
|||
|
||||
Notifications.clear();
|
||||
|
||||
const scss = App.configDir + '/style.scss';
|
||||
const css = '/tmp/style-ags.css';
|
||||
exec(`sassc ${scss} ${css}`);
|
||||
const styleScss = App.configDir + '/style.scss';
|
||||
const styleCss = '/tmp/style-ags.css';
|
||||
exec(`sassc ${styleScss} ${styleCss}`);
|
||||
|
||||
export default {
|
||||
style: css,
|
||||
style: styleCss,
|
||||
windows: [
|
||||
forMonitors(Panel),
|
||||
NotificationsPopupWindow(),
|
||||
|
|
|
@ -4,10 +4,10 @@ import { lookUpIcon, timeout } from 'resource:///com/github/Aylur/ags/utils.js';
|
|||
const NotificationIcon = ({ appEntry, appIcon, image }) => {
|
||||
if (image) {
|
||||
return Widget.Box({
|
||||
valign: 'start',
|
||||
vpack: 'start',
|
||||
hexpand: false,
|
||||
className: 'icon img',
|
||||
style: `
|
||||
css: `
|
||||
background-image: url("${image}");
|
||||
background-size: contain;
|
||||
background-repeat: no-repeat;
|
||||
|
@ -27,17 +27,17 @@ const NotificationIcon = ({ appEntry, appIcon, image }) => {
|
|||
icon = appEntry;
|
||||
|
||||
return Widget.Box({
|
||||
valign: 'start',
|
||||
vpack: 'start',
|
||||
hexpand: false,
|
||||
className: 'icon',
|
||||
style: `
|
||||
css: `
|
||||
min-width: 78px;
|
||||
min-height: 78px;
|
||||
`,
|
||||
children: [Widget.Icon({
|
||||
icon, size: 58,
|
||||
halign: 'center', hexpand: true,
|
||||
valign: 'center', vexpand: true,
|
||||
hpack: 'center', hexpand: true,
|
||||
vpack: 'center', vexpand: true,
|
||||
})],
|
||||
});
|
||||
};
|
||||
|
@ -88,7 +88,7 @@ export const Notification = n => Widget.EventBox({
|
|||
}),
|
||||
Widget.Button({
|
||||
className: 'close-button',
|
||||
valign: 'start',
|
||||
vpack: 'start',
|
||||
child: Widget.Icon('window-close-symbolic'),
|
||||
onClicked: n.close.bind(n),
|
||||
}),
|
||||
|
|
|
@ -5,7 +5,7 @@ import { Notification } from './notification.js';
|
|||
|
||||
const PopupList = () => Box({
|
||||
className: 'notificationPopupList',
|
||||
style: 'padding: 1px;', // so it shows up
|
||||
css: 'padding: 1px;', // so it shows up
|
||||
vertical: true,
|
||||
binds: [['children', Notifications, 'popups',
|
||||
popups => popups.map(Notification)]],
|
||||
|
|
|
@ -18,7 +18,7 @@ const Placeholder = () => Widget.Box({
|
|||
className: 'placeholder',
|
||||
vertical: true,
|
||||
vexpand: true,
|
||||
valign: 'center',
|
||||
vpack: 'center',
|
||||
children: [
|
||||
Widget.Icon('notifications-disabled-symbolic'),
|
||||
Widget.Label('Your inbox is empty'),
|
||||
|
|
|
@ -24,7 +24,7 @@ const Center = () => Box({
|
|||
});
|
||||
|
||||
const Right = () => Box({
|
||||
halign: 'end',
|
||||
hpack: 'end',
|
||||
children: [
|
||||
SysTray(),
|
||||
Clock(),
|
||||
|
@ -33,7 +33,7 @@ const Right = () => Box({
|
|||
|
||||
export default monitor => Window({
|
||||
name: `bar-${monitor}`,
|
||||
exclusive: true,
|
||||
exclusivity: "exclusive",
|
||||
className: 'bar',
|
||||
monitor,
|
||||
anchor: ['top', 'left', 'right'],
|
||||
|
|
|
@ -11,7 +11,6 @@ export default () => Button({
|
|||
Stack({
|
||||
items: [
|
||||
// tuples of [string, Widget]
|
||||
['101', Icon('audio-volume-overamplified-symbolic')],
|
||||
['67', Icon('audio-volume-high-symbolic')],
|
||||
['34', Icon('audio-volume-medium-symbolic')],
|
||||
['1', Icon('audio-volume-low-symbolic')],
|
||||
|
|
|
@ -2,222 +2,19 @@
|
|||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
system,
|
||||
...
|
||||
}: let
|
||||
leftMonitor = {
|
||||
display = "DP-2";
|
||||
res = "preferred";
|
||||
pos = "0x0";
|
||||
};
|
||||
|
||||
rightMonitor = {
|
||||
display = "DP-1";
|
||||
res = "preferred";
|
||||
pos = "2560x0";
|
||||
};
|
||||
|
||||
modKey = "SUPER";
|
||||
|
||||
wobsock = "/tmp/wob-vol.fifo";
|
||||
|
||||
wob-voldaemon = pkgs.writeShellScriptBin "wob-volumeindicator.sh" ''
|
||||
if pgrep "wob"; then
|
||||
killall wob &> /dev/null
|
||||
fi
|
||||
|
||||
if [[ -e "${wobsock}" ]]; then
|
||||
rm "${wobsock}"
|
||||
fi
|
||||
|
||||
mkfifo "${wobsock}"
|
||||
tail -f "${wobsock}" | ${pkgs.wob}/bin/wob &
|
||||
echo "wob: started"
|
||||
'';
|
||||
|
||||
killprocess = pkgs.writeShellScriptBin "killprocess.sh" ''
|
||||
ps -x -o pid=,comm= | column -t -o " " | ${pkgs.rofi-wayland}/bin/rofi -dmenu -p "kill process: " | awk '{print $1}' | uniq | xargs -r kill -9
|
||||
'';
|
||||
|
||||
passmenu = pkgs.writeShellScriptBin "passmenu.sh" ''
|
||||
shopt -s nullglob globstar
|
||||
|
||||
prefix=''${PASSWORD_STORE_DIR-~/.password-store}
|
||||
password_files=( "$prefix"/**/*.gpg )
|
||||
password_files=( "''${password_files[@]#"$prefix"/}" )
|
||||
password_files=( "''${password_files[@]%.gpg}" )
|
||||
|
||||
password=$(printf '%s\n' "''${password_files[@]}" | ${pkgs.rofi-wayland}/bin/rofi -dmenu -p "pass: " "$@")
|
||||
|
||||
[[ -n $password ]] || exit
|
||||
|
||||
pass show -c "$password" 2>/dev/null
|
||||
'';
|
||||
in {
|
||||
}: {
|
||||
imports = [
|
||||
inputs.hyprland.homeManagerModules.default
|
||||
./settings.nix
|
||||
../ags
|
||||
../foot
|
||||
../wob
|
||||
../mako
|
||||
];
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
monitor=${leftMonitor.display}, ${leftMonitor.res}, ${leftMonitor.pos}, 1
|
||||
monitor=${rightMonitor.display}, ${rightMonitor.res}, ${rightMonitor.pos}, 1
|
||||
|
||||
workspace = 1, monitor:${rightMonitor.display}, persistent:true
|
||||
workspace = 2, monitor:${rightMonitor.display}, persistent:true
|
||||
workspace = 3, monitor:${rightMonitor.display}, persistent:true
|
||||
|
||||
workspace = 4, monitor:${leftMonitor.display}, persistent:true
|
||||
workspace = 5, monitor:${leftMonitor.display}, persistent:true
|
||||
workspace = 6, monitor:${leftMonitor.display}, persistent:true
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_variant = altgr-intl
|
||||
|
||||
#mouse
|
||||
accel_profile = flat
|
||||
follow_mouse = 1
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 10
|
||||
border_size = 4
|
||||
col.active_border = rgba(665C54ff)
|
||||
col.inactive_border = rgba(282828ff)
|
||||
}
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
preserve_split = yes
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
misc {
|
||||
force_default_wallpaper = 0
|
||||
vfr = true
|
||||
vrr = 2
|
||||
# enable_swallow = true
|
||||
# swallow_regex = ^(foot)$
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
|
||||
blur {
|
||||
enabled = yes
|
||||
size = 3
|
||||
passes = 2
|
||||
new_optimizations = on
|
||||
}
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 30
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
animation = windowsIn, 1, 8, default, slide
|
||||
animation = windowsOut, 1, 8, default, slide
|
||||
animation = border, 1, 8, default
|
||||
animation = fade, 1, 5, default
|
||||
animation = workspaces, 1, 4, default
|
||||
}
|
||||
|
||||
exec-once = ${pkgs.openrgb}/bin/openrgb --startminimized --profile autorun.orp
|
||||
exec-once = ${pkgs.blueman}/bin/blueman-applet
|
||||
# exec-once = ${pkgs.networkmanagerapplet}/bin/nm-applet --indicator
|
||||
exec-once = ${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1
|
||||
# exec-once = ${pkgs.mullvad-vpn}/bin/mullvad-gui
|
||||
exec-once = ${pkgs.ydotool}/bin/ydotoold
|
||||
|
||||
exec = ${pkgs.xorg.xrandr}/bin/xrandr --output ${rightMonitor.display} --primary
|
||||
exec = ${wob-voldaemon}/bin/wob-volumeindicator.sh
|
||||
exec = ags -q; ags
|
||||
exec = pkill swww; sleep 2 && ${pkgs.swww}/bin/swww init && ${pkgs.swww}/bin/swww img $(cat ~/.cache/swww/wallpaper.txt)
|
||||
|
||||
#Set cursor
|
||||
exec = ${pkgs.hyprland}/bin/hyprctl setcursor "${config.gtk.cursorTheme.name}" ${builtins.toString config.gtk.cursorTheme.size} &> /dev/null
|
||||
|
||||
# Fix clipboard with Wine
|
||||
exec-once = ${pkgs.wl-clipboard}/bin/wl-paste -t text -w sh -c '[ "$(${pkgs.xclip}/bin/xclip -selection clipboard -o)" = "$(${pkgs.wl-clipboard}/bin/wl-paste -n)" ] || ${pkgs.xclip}/bin/xclip -selection clipboard'
|
||||
|
||||
env = XCURSOR_SIZE,${builtins.toString config.gtk.cursorTheme.size}
|
||||
|
||||
#keybinds
|
||||
bind = ${modKey}, 1, workspace, 1
|
||||
bind = ${modKey}, 2, workspace, 2
|
||||
bind = ${modKey}, 3, workspace, 3
|
||||
bind = ${modKey}, 4, workspace, 4
|
||||
bind = ${modKey}, 5, workspace, 5
|
||||
bind = ${modKey}, 6, workspace, 6
|
||||
|
||||
bind = ${modKey} SHIFT, 1, movetoworkspace, 1
|
||||
bind = ${modKey} SHIFT, 2, movetoworkspace, 2
|
||||
bind = ${modKey} SHIFT, 3, movetoworkspace, 3
|
||||
bind = ${modKey} SHIFT, 4, movetoworkspace, 4
|
||||
bind = ${modKey} SHIFT, 5, movetoworkspace, 5
|
||||
bind = ${modKey} SHIFT, 6, movetoworkspace, 6
|
||||
|
||||
|
||||
bindm = ${modKey}, mouse:272, movewindow
|
||||
bindm = ${modKey}, mouse:273, resizewindow
|
||||
|
||||
bind = ${modKey}, P, pseudo, # dwindle
|
||||
bind = ${modKey}, J, togglesplit, # dwindle
|
||||
bind = ${modKey} SHIFT, Space, togglefloating
|
||||
bind = ${modKey}, F, fullscreen
|
||||
|
||||
bind = ${modKey} SHIFT, Q, killactive
|
||||
bind = ${modKey}, D, exec, ${pkgs.rofi-wayland}/bin/rofi -show drun -p Applications -show-icons
|
||||
|
||||
bind = ${modKey}, Q, exec, ${pkgs.firefox}/bin/firefox
|
||||
|
||||
bind = ${modKey}, Return, exec, ${pkgs.foot}/bin/foot
|
||||
|
||||
bind = , XF86AudioRaiseVolume, exec, ${pkgs.pamixer}/bin/pamixer -i 10 --get-volume > ${wobsock}
|
||||
bind = , XF86AudioLowerVolume, exec, ${pkgs.pamixer}/bin/pamixer -d 10 --get-volume > ${wobsock}
|
||||
|
||||
bind = CTRL, grave, exec, ags toggle-window notification-center
|
||||
bind = ${modKey} SHIFT, O, exec, ${killprocess}/bin/killprocess.sh
|
||||
bind = ${modKey} SHIFT, P, exec, ${passmenu}/bin/passmenu.sh
|
||||
|
||||
bind = MOD5, F9, exec, ${pkgs.mpc-cli}/bin/mpc stop
|
||||
bind = MOD5, F10, exec, ${pkgs.mpc-cli}/bin/mpc prev
|
||||
bind = MOD5, F11, exec, ${pkgs.mpc-cli}/bin/mpc toggle
|
||||
bind = MOD5, F12, exec, ${pkgs.mpc-cli}/bin/mpc next
|
||||
|
||||
bind = , Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy screen
|
||||
bind = ${modKey}, Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy active
|
||||
bind = ${modKey} SHIFT, Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy area
|
||||
bind = ${modKey}, R, exec, ${pkgs.dolphin}/bin/dolphin
|
||||
|
||||
bind = ${modKey} SHIFT, C, exec, hyprctl reload
|
||||
|
||||
layerrule = blur, notifications
|
||||
layerrule = ignorezero, notifications
|
||||
|
||||
layerrule = blur, gtk-layer-shell
|
||||
layerrule = blur, bar-0
|
||||
layerrule = blur, bar-1
|
||||
|
||||
layerrule = blur, notificationPopupWindow
|
||||
layerrule = ignorezero, notificationPopupWindow
|
||||
|
||||
|
||||
windowrulev2 = fullscreen, class:^(hl2_linux)$
|
||||
windowrulev2 = float, class:^(org.kde.dolphin)$
|
||||
'';
|
||||
package = inputs.hyprland.packages.${system}.hyprland;
|
||||
};
|
||||
|
||||
home.file.".local/share/kservices5/swww.desktop".text = ''
|
||||
|
@ -230,8 +27,8 @@ in {
|
|||
|
||||
[Desktop Action setSWWWWallpaper]
|
||||
Name=Set Image as Wallpaper
|
||||
Exec=swww img "%f" && echo "%f" > ~/.cache/swww/wallpaper.txt
|
||||
Exec=swww img "%f" && ln -sf "%f" ~/.cache/swww/wallpaper
|
||||
'';
|
||||
|
||||
home.packages = [pkgs.wl-clipboard pkgs.wl-clipboard-x11 pkgs.hyprpicker pkgs.swww pkgs.hyprprop];
|
||||
home.packages = [pkgs.wl-clipboard pkgs.wl-clipboard-x11 pkgs.swww inputs.hyprland-contrib.packages.${system}.hyprprop];
|
||||
}
|
||||
|
|
|
@ -0,0 +1,177 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
leftMonitor = {
|
||||
display = "DP-2";
|
||||
res = "preferred";
|
||||
pos = "0x0";
|
||||
};
|
||||
|
||||
rightMonitor = {
|
||||
display = "DP-1";
|
||||
res = "preferred";
|
||||
pos = "2560x0";
|
||||
};
|
||||
|
||||
modKey = "SUPER";
|
||||
in {
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
monitor = [
|
||||
"${leftMonitor.display}, ${leftMonitor.res}, ${leftMonitor.pos}, 1"
|
||||
"${rightMonitor.display}, ${rightMonitor.res}, ${rightMonitor.pos}, 1"
|
||||
];
|
||||
|
||||
workspace = [
|
||||
"1, monitor:${rightMonitor.display}, persistent:true"
|
||||
"2, monitor:${rightMonitor.display}, persistent:true"
|
||||
"3, monitor:${rightMonitor.display}, persistent:true"
|
||||
|
||||
"4, monitor:${leftMonitor.display}, persistent:true"
|
||||
"5, monitor:${leftMonitor.display}, persistent:true"
|
||||
"6, monitor:${leftMonitor.display}, persistent:true"
|
||||
];
|
||||
|
||||
input = {
|
||||
kb_layout = "us";
|
||||
kb_variant = "altgr-intl";
|
||||
accel_profile = "flat";
|
||||
follow_mouse = 1;
|
||||
};
|
||||
|
||||
general = {
|
||||
gaps_in = 10;
|
||||
border_size = 4;
|
||||
"col.active_border" = "rgba(665C54ff)";
|
||||
"col.inactive_border" = "rgba(282828ff)";
|
||||
};
|
||||
|
||||
dwindle = {
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
master = {
|
||||
new_is_master = true;
|
||||
};
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
vfr = true;
|
||||
vrr = 2;
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 10;
|
||||
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 2;
|
||||
new_optimizations = true;
|
||||
};
|
||||
drop_shadow = true;
|
||||
shadow_range = 30;
|
||||
shadow_render_power = 3;
|
||||
"col.shadow" = "rgba(1a1a1aee)";
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = true;
|
||||
animation = [
|
||||
"windowsIn, 1, 8, default, slide"
|
||||
"windowsOut, 1, 8, default, slide"
|
||||
"border, 1, 8, default"
|
||||
"fade, 1, 5, default"
|
||||
"workspaces, 1, 4, default"
|
||||
];
|
||||
};
|
||||
|
||||
exec-once = [
|
||||
"${pkgs.openrgb}/bin/openrgb --startminimized --profile autorun.orp"
|
||||
"${pkgs.blueman}/bin/blueman-applet"
|
||||
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
|
||||
"${pkgs.ydotool}/bin/ydotoold"
|
||||
];
|
||||
|
||||
exec = [
|
||||
"${pkgs.xorg.xrandr}/bin/xrandr --output ${rightMonitor.display} --primary"
|
||||
"ags -q; ags"
|
||||
"pkill swww; sleep 2 && ${pkgs.swww}/bin/swww init && ${pkgs.swww}/bin/swww img $(cat ~/.cache/swww/wallpaper.txt)"
|
||||
|
||||
#Set cursor
|
||||
"${pkgs.hyprland}/bin/hyprctl setcursor ${config.gtk.cursorTheme.name} ${builtins.toString config.gtk.cursorTheme.size} &> /dev/null"
|
||||
];
|
||||
|
||||
env = [
|
||||
"XCURSOR_SIZE,${builtins.toString config.gtk.cursorTheme.size}"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"${modKey}, 1, workspace, 1"
|
||||
"${modKey}, 2, workspace, 2"
|
||||
"${modKey}, 3, workspace, 3"
|
||||
"${modKey}, 4, workspace, 4"
|
||||
"${modKey}, 5, workspace, 5"
|
||||
"${modKey}, 6, workspace, 6"
|
||||
|
||||
"${modKey} SHIFT, 1, movetoworkspace, 1"
|
||||
"${modKey} SHIFT, 2, movetoworkspace, 2"
|
||||
"${modKey} SHIFT, 3, movetoworkspace, 3"
|
||||
"${modKey} SHIFT, 4, movetoworkspace, 4"
|
||||
"${modKey} SHIFT, 5, movetoworkspace, 5"
|
||||
"${modKey} SHIFT, 6, movetoworkspace, 6"
|
||||
|
||||
"${modKey}, P, pseudo, # dwindle"
|
||||
"${modKey}, J, togglesplit, # dwindle"
|
||||
"${modKey} SHIFT, Space, togglefloating"
|
||||
"${modKey}, F, fullscreen"
|
||||
|
||||
"${modKey} SHIFT, Q, killactive"
|
||||
"${modKey}, D, exec, ${pkgs.rofi-wayland}/bin/rofi -show drun -p Applications -show-icons"
|
||||
"${modKey} SHIFT, P, exec, ${pkgs.rofi-pass-wayland}/bin/rofi-pass"
|
||||
|
||||
"${modKey}, Q, exec, ${pkgs.firefox}/bin/firefox"
|
||||
|
||||
"${modKey}, Return, exec, ${pkgs.foot}/bin/foot"
|
||||
|
||||
", XF86AudioRaiseVolume, exec, ${pkgs.pamixer}/bin/pamixer -i 10 --get-volume"
|
||||
", XF86AudioLowerVolume, exec, ${pkgs.pamixer}/bin/pamixer -d 10 --get-volume"
|
||||
|
||||
"CTRL, grave, exec, ags toggle-window notification-center"
|
||||
|
||||
"MOD5, F9, exec, ${pkgs.mpc-cli}/bin/mpc stop"
|
||||
"MOD5, F10, exec, ${pkgs.mpc-cli}/bin/mpc prev"
|
||||
"MOD5, F11, exec, ${pkgs.mpc-cli}/bin/mpc toggle"
|
||||
"MOD5, F12, exec, ${pkgs.mpc-cli}/bin/mpc next"
|
||||
", Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy screen"
|
||||
"${modKey}, Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy active"
|
||||
"${modKey} SHIFT, Print, exec, ${pkgs.grimblast}/bin/grimblast -c --notify copy area"
|
||||
"${modKey}, R, exec, ${pkgs.dolphin}/bin/dolphin"
|
||||
"${modKey} SHIFT, C, exec, hyprctl reload"
|
||||
];
|
||||
|
||||
bindm = [
|
||||
"${modKey}, mouse:272, movewindow"
|
||||
"${modKey}, mouse:273, resizewindow"
|
||||
];
|
||||
|
||||
layerrule = [
|
||||
"blur, notifications"
|
||||
"ignorezero, notifications"
|
||||
"blur, gtk-layer-shell"
|
||||
"blur, bar-0"
|
||||
"blur, bar-1"
|
||||
"blur, notificationPopupWindow"
|
||||
"ignorezero, notificationPopupWindow"
|
||||
];
|
||||
|
||||
windowrulev2 = [
|
||||
"fullscreen, class:^(hl2_linux)$"
|
||||
"float, class:^(org.kde.dolphin)$"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -2,6 +2,7 @@
|
|||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
system,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
@ -25,11 +26,11 @@
|
|||
home.homeDirectory = "/home/manuel";
|
||||
home.packages = with pkgs; [
|
||||
appimage-run
|
||||
armcord
|
||||
bc
|
||||
bottles
|
||||
bottom
|
||||
calcurse
|
||||
discord
|
||||
electron
|
||||
gamescope_git
|
||||
gimp
|
||||
|
@ -69,18 +70,15 @@
|
|||
twemoji-color-font
|
||||
vimv
|
||||
vulkan-tools
|
||||
vulkan-validation-layers
|
||||
xdg-utils
|
||||
xivlauncher
|
||||
wqy_zenhei #fix for missing non-ascii fonts in TF2
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
GTK_THEME = "${builtins.toString config.gtk.theme.name}";
|
||||
MESA_DISK_CACHE_SINGLE_FILE = "1";
|
||||
NIXOS_OZONE_WL = "1";
|
||||
NIXPKGS_ALLOW_UNFREE = "1";
|
||||
RADV_PERFTEST = "gpl";
|
||||
WINEDLLOVERRIDES = "winemenubuilder.exe=d";
|
||||
XDG_SCREENSHOTS_DIR = "~/Screenshots";
|
||||
};
|
||||
|
|
Reference in New Issue