summaryrefslogtreecommitdiff
path: root/common/modules/window_managers/mango/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'common/modules/window_managers/mango/default.nix')
-rw-r--r--common/modules/window_managers/mango/default.nix327
1 files changed, 0 insertions, 327 deletions
diff --git a/common/modules/window_managers/mango/default.nix b/common/modules/window_managers/mango/default.nix
deleted file mode 100644
index 67a8574..0000000
--- a/common/modules/window_managers/mango/default.nix
+++ /dev/null
@@ -1,327 +0,0 @@
-{
- homeManager,
- inputs,
- moduleNameSpace,
- ...
-}:
-{
- config,
- lib,
- pkgs,
- ...
-}:
-let
- cfg = config.${moduleNameSpace}.windowManagers;
- scripts = import ../scripts.nix { inherit pkgs config; };
- eyecandy = cfg.eyeCandy.enable;
-in
-{
- imports =
- if homeManager then [ inputs.mango.hmModules.mango ] else [ inputs.mango.nixosModules.mango ];
-
- config = lib.mkIf cfg.mango.enable (
- if homeManager then
- {
- wayland.windowManager.mango = {
- enable = true;
- systemd.enable = true;
- systemd.variables = [ "--all" ];
- extraConfig = ''
- ${lib.optionalString (config.beeMods.matugen.enable && cfg.beeConfig.enable && !cfg.noctalia) ''
- source = ~/.config/mango/colors.conf
- ''}
-
- ${lib.optionalString (!cfg.beeConfig.enable && cfg.noctalia) ''
- source = ~/.config/mango/noctalia.conf
- ''}
-
- blur=${if eyecandy && cfg.eyeCandy.window.blur.enable then "1" else "0"}
- blur_layer=0
- blur_optimized=1
- blur_params_num_passes = ${if eyecandy then toString cfg.eyeCandy.window.blur.passes else "0"}
- blur_params_radius = ${if eyecandy then toString cfg.eyeCandy.window.blur.radius else "0"}
- blur_params_noise = 0.02
- blur_params_brightness = 0.9
- blur_params_contrast = 0.9
- blur_params_saturation = 1.1
-
- shadows=${if eyecandy && cfg.eyeCandy.window.shadows.enable then "1" else "0"}
- layer_shadows = 0
- shadow_only_floating = 1
- shadows_size = 10
- shadows_blur = 15
- shadows_position_x = 0
- shadows_position_y = 0
-
- border_radius=${if eyecandy then toString cfg.eyeCandy.window.borderRadius else "0"}
-
- no_radius_when_single=0
- focused_opacity=${if eyecandy then toString cfg.eyeCandy.window.opacity else "1.0"}
- unfocused_opacity=${if eyecandy then toString cfg.eyeCandy.window.opacity else "1.0"}
-
- # Scroller configuration
- scroller_structs=15
- scroller_default_proportion=0.6
- scroller_focus_center=0
- scroller_prefer_center=0
- edge_scroller_pointer_focus=1
- scroller_default_proportion_single=1.0
- scroller_ignore_proportion_single=0
- scroller_proportion_preset=0.5,0.8,1.0
-
- # Master-Stack Layout Setting
- new_is_master=0
- default_mfact=0.55
- default_nmaster=1
- smartgaps=0
-
- # Overview Setting
- hotarea_size=10
- enable_hotarea=0
- ov_tab_mode=1
- overviewgappi=5
- overviewgappo=30
-
- # Misc
- no_border_when_single=0
- axis_bind_apply_timeout=100
- focus_on_activate=1
- idleinhibit_ignore_visible=0
- sloppyfocus=1
- warpcursor=1
- focus_cross_monitor=0
- focus_cross_tag=0
- enable_floating_snap=0
- snap_distance=30
- drag_tile_to_tile=1
- xwayland_persistence=0
- syncobj_enable=1
- allow_tearing=2
-
- # keyboard
- repeat_delay=300;
- repeat_rate=50;
- numlockon=0
- xkb_rules_layout=us
-
- # Trackpad
- # need relogin to make it apply
- disable_trackpad=0
- tap_to_click=1
- tap_and_drag=1
- drag_lock=1
- trackpad_natural_scrolling=1
- disable_while_typing=1
- left_handed=0
- middle_button_emulation=0
- swipe_min_threshold=1
-
- mouse_natural_scrolling=0
-
- gappih=4
- gappiv=4
- gappoh=4
- gappov=4
- scratchpad_width_ratio=0.8
- scratchpad_height_ratio=0.9
- borderpx=2
-
- #Keymaps
- # beeConfig keymaps
- ${lib.optionalString (config.beeMods.matugen.enable && cfg.beeConfig.enable && !cfg.noctalia) ''
- bind=SUPER,y,spawn,${scripts.dostuff} wall
- bind=SUPER,a,spawn,rofi -show drun
- bind=SUPER,c,spawn,sh -c 'fyi "Clock" "$(date)"'
- bind=SUPER,comma,spawn,${scripts.dostuff} settings
-
- bind=NONE,XF86AudioRaiseVolume,spawn,${scripts.volume} up
- bind=NONE,XF86AudioLowerVolume,spawn,${scripts.volume} down
- bind=NONE,XF86AudioMute,spawn,${scripts.volume} toggle
-
- bind=NONE,XF86AudioMicMute,spawn,${scripts.micToggle}
-
- bind=NONE,XF86MonBrightnessUp,spawn,${scripts.brightness} up
- bind=NONE,XF86MonBrightnessDown,spawn,${scripts.brightness} down
-
- bind=NONE,Print,spawn,${scripts.screenshot} full
- bind=SUPER,Print,spawn,${scripts.screenshot} selection
- bind=SUPER+SHIFT,Print,spawn,${scripts.screenshot} window
- ''}
-
- ${lib.optionalString (!cfg.beeConfig.enable && cfg.noctalia) ''
- bind=SUPER,y,spawn,noctalia msg panel-toggle wallpaper
- bind=SUPER,a,spawn,noctalia msg panel-toggle launcher
- bind=SUPER,c,spawn,sh -c 'fyi "Clock" "$(date)"'
- bind=SUPER,v,spawn,noctalia msg panel-toggle clipboard
- bind=SUPER,comma,spawn,noctalia msg settings-toggle
-
- bind=NONE,XF86AudioRaiseVolume,spawn,noctalia msg volume-up
- bind=NONE,XF86AudioLowerVolume,spawn,noctalia msg volume-down
- bind=NONE,XF86AudioMute,spawn,noctalia msg volume-mute
-
- bind=NONE,XF86AudioMicMute,spawn,noctalia msg mic-mute
-
- bind=NONE,XF86MonBrightnessUp,spawn,noctalia msg brightness-up
- bind=NONE,XF86MonBrightnessDown,spawn,noctalia msg brightness-down
-
- bind=NONE,Print,spawn,noctalia msg screenshot-fullscreen
- ''}
-
- bind=SUPER,r,reload_config
- bind=SUPER,Return,spawn,sh -c '${scripts.terminal}'
-
- bind=SUPER,F12,spawn,gnome-calculator
- bind=SUPER,b,spawn,librewolf
- bind=SUPER,e,spawn,nautilus
-
- bind=SUPER,m,quit
- bind=SUPER,q,killclient,
-
- bind=SUPER,h,focusdir,left
- bind=SUPER,l,focusdir,right
- bind=SUPER,k,focusdir,up
- bind=SUPER,j,focusdir,down
-
-
- bind=SUPER+SHIFT,k,exchange_client,up
- bind=SUPER+SHIFT,j,exchange_client,down
- bind=SUPER+SHIFT,h,exchange_client,left
- bind=SUPER+SHIFT,l,exchange_client,right
-
- bind=SUPER,g,toggleglobal,
- bind=ALT,Tab,toggleoverview,
- bind=SUPER,space,togglefloating,
- bind=SUPER,d,togglemaximizescreen,
- bind=SUPER,f,togglefullscreen,
- bind=ALT+SHIFT,f,togglefakefullscreen,
- bind=SUPER,i,minimized,
- bind=SUPER,o,toggleoverlay,
- bind=SUPER+SHIFT,I,restore_minimized
- bind=SUPER,s,toggle_scratchpad
-
- bind=ALT,e,set_proportion,1.0
- bind=ALT,x,switch_proportion_preset,
-
- bind=SUPER,1,view,1,0
- bind=SUPER,2,view,2,0
- bind=SUPER,3,view,3,0
- bind=SUPER,4,view,4,0
- bind=SUPER,5,view,5,0
- bind=SUPER,6,view,6,0
- bind=SUPER,7,view,7,0
- bind=SUPER,8,view,8,0
- bind=SUPER,9,view,9,0
-
- bind=SUPER+SHIFT,1,tag,1,0
- bind=SUPER+SHIFT,2,tag,2,0
- bind=SUPER+SHIFT,3,tag,3,0
- bind=SUPER+SHIFT,4,tag,4,0
- bind=SUPER+SHIFT,5,tag,5,0
- bind=SUPER+SHIFT,6,tag,6,0
- bind=SUPER+SHIFT,7,tag,7,0
- bind=SUPER+SHIFT,8,tag,8,0
- bind=SUPER+SHIFT,9,tag,9,0
-
- bind=alt+shift,Left,focusmon,left
- bind=alt+shift,Right,focusmon,right
- bind=SUPER+Alt,Left,tagmon,left
- bind=SUPER+Alt,Right,tagmon,right
-
- bind=SUPER,Up,movewin,+0,-50
- bind=SUPER,Down,movewin,+0,+50
- bind=SUPER,Left,movewin,-50,+0
- bind=SUPER,Right,movewin,+50,+0
-
- bind=ALT,k,resizewin,+0,-50
- bind=ALT,j,resizewin,+0,+50
- bind=ALT,h,resizewin,-50,+0
- bind=ALT,l,resizewin,+50,+0
-
-
- bind=NONE,XF86AudioPlay,spawn,playerctl play-pause
- bind=NONE,XF86AudioNext,spawn,playerctl next
- bind=NONE,XF86AudioPrev,spawn,playerctl previous
- bind=NONE,XF86AudioStop,spawn,playerctl stop
-
-
- mousebind=SUPER,btn_left,moveresize,curmove
- mousebind=NONE,btn_middle,togglemaximizescreen,0
- mousebind=SUPER,btn_right,moveresize,curresize
-
- axisbind=SUPER,UP,viewtoleft_have_client
- axisbind=SUPER,DOWN,viewtoright_have_client
-
- windowrule=tags:1,appid:^(zen|firefox|librewolf|obsidian)$
- windowrule=tags:2,appid:^(foot|footclient|alacritty|dev.zed.Zed)$
- windowrule=tags:3,appid:^(vesktop|discord|thunderbird|Element|equibop)$
- windowrule=tags:4,appid:^steam$
-
- windowrule=scroller_proportion:0.3,appid:^steam$,title:^Friends List$
- windowrule=scroller_proportion:0.5,appid:^steam$,title:.*(Settings|Properties).*
- windowrule=isfloating:1,appid:^steam$,title:^Steam - News$
- windowrule=isfloating:1,appid:^(org.gnome.Calculator|org.pulseaudio.pavucontrol|Pinentry-gtk)$
- windowrule=isoverlay:1,appid:^com.gabm.satty$
-
- # Tag rules
- tagrule=id:1,layout_name:scroller
- tagrule=id:2,layout_name:fair
- tagrule=id:3,layout_name:scroller
- tagrule=id:4,layout_name:scroller
- tagrule=id:5,layout_name:grid
- tagrule=id:6,layout_name:tile
- tagrule=id:7,layout_name:tile
- tagrule=id:8,layout_name:tile
- tagrule=id:9,layout_name:tile
-
- env=ELECTRON_OZONE_PLATFORM_HINT,auto
- env=QT_QPA_PLATFORMTHEME,qt6ct
- env=QT_QPA_PLATFORM,wayland
- env=QT_AUTO_SCREEN_SCALE_FACTOR,1
- env=XDG_SESSION_TYPE,wayland
- env=GDK_BACKEND,wayland,x11
- env=GDK_SCALE,1
- env=NVD_BACKEND,direct
-
- animations=${if eyecandy && cfg.eyeCandy.animations.enable then "1" else "0"}
- layer_animations=0
- animation_type_open=slide
- animation_type_close=zoom
- animation_fade_in=0
- animation_fade_out=1
- tag_animation_direction=1
- zoom_initial_ratio=0.8
- zoom_end_ratio=0.8
- fadein_begin_opacity=0.5
- fadeout_begin_opacity=0.5
- animation_duration_move=200
- animation_duration_open=200
- animation_duration_tag=150
- animation_duration_close=100
- animation_duration_focus=0
- animation_curve_open=0.05,0.7,0.1,1.0
- animation_curve_move=0.46,1.0,0.29,1
- animation_curve_tag=0.46,1.0,0.29,1
- animation_curve_close=0.0,0.0,1.0,1.0
- animation_curve_focus=0.05,0.7,0.1,1.0
- animation_curve_opafadeout=0.5,0.5,0.5,0.5
- animation_curve_opafadein=0.46,1.0,0.29,1
- '';
- autostart_sh = ''
- gnome-keyring-daemon --start --components=secrets,ssh,pkcs11 &
- ${lib.optionalString cfg.beeConfig.enable ''
- wl-paste --type text --watch cliphist store &
- awww-daemon &
- dunst &
- ''}
- ${lib.optionalString cfg.beeConfig.waybar ''
- waybar &
- ''}
- '';
- };
- }
- else
- {
- programs.mango.enable = true;
- }
- );
-}