0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Damn

+166 -253
+1 -1
configs/starship.toml
··· 1 - # This config could just go in home manager, but unfortunately it is massive, and earlier attempts broke harshly.. 1 + # This config could just go in home manager, but unfortunately earlier attempts broke harshly.. 2 2 3 3 4 4 format = """
configs/wlogout/icons/hibernate.png configs/wlogout-icons/hibernate.png
configs/wlogout/icons/lock.png configs/wlogout-icons/lock.png
configs/wlogout/icons/logout.png configs/wlogout-icons/logout.png
configs/wlogout/icons/reboot.png configs/wlogout-icons/reboot.png
configs/wlogout/icons/shutdown.png configs/wlogout-icons/shutdown.png
configs/wlogout/icons/suspend.png configs/wlogout-icons/suspend.png
-36
configs/wlogout/layout
··· 1 - { 2 - "label" : "lock", 3 - "action" : "hyprlock", 4 - "text" : "Lock", 5 - "keybind" : "l" 6 - } 7 - { 8 - "label" : "logout", 9 - "action" : "niri msg action quit --skip-confirmation", 10 - "text" : "Logout", 11 - "keybind" : "e" 12 - } 13 - { 14 - "label" : "shutdown", 15 - "action" : "poweroff", 16 - "text" : "Shutdown", 17 - "keybind" : "s" 18 - } 19 - { 20 - "label" : "reboot", 21 - "action" : "reboot", 22 - "text" : "Reboot", 23 - "keybind" : "r" 24 - } 25 - { 26 - "label" : "hibernate", 27 - "action" : "niri msg action open-overview; niri msg action spawn -- hyprlock && systemctl hibernate", 28 - "text" : "Hibernate", 29 - "keybind" : "h" 30 - } 31 - { 32 - "label" : "suspend", 33 - "action" : "niri msg action spawn -- hyprlock && systemctl suspend-then-hibernate", 34 - "text" : "Sleep", 35 - "keybind" : "z" 36 - }
-61
configs/wlogout/style.css
··· 1 - * { 2 - font-family: "Lotion Black", FontAwesome, Roboto, Helvetica, Arial, sans-serif; 3 - background-image: none; 4 - transition: 20ms; 5 - box-shadow: none; 6 - } 7 - 8 - window { 9 - background-color: rgba(12, 12, 12, 0.8); 10 - } 11 - 12 - button { 13 - color: #FFFFFF; 14 - font-size:20px; 15 - margin: 10px; 16 - border-radius: 20px; 17 - background-repeat: no-repeat; 18 - background-position: center; 19 - background-size: 25%; 20 - background-color: unset; 21 - border-style: solid; 22 - border: 3px solid #FFFFFF; 23 - box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); 24 - } 25 - 26 - #lock { 27 - background-image: image(url("icons/lock.png")); 28 - background-color: #7facb3; 29 - } 30 - 31 - #logout { 32 - background-image: image(url("icons/logout.png")); 33 - background-color: #ff4500; 34 - } 35 - 36 - #shutdown { 37 - background-image: image(url("icons/shutdown.png")); 38 - background-color: #8b0000; 39 - } 40 - 41 - #reboot { 42 - background-image: image(url("icons/reboot.png")); 43 - background-color: #556b2f; 44 - } 45 - 46 - #hibernate { 47 - background-image: image(url("icons/hibernate.png")); 48 - background-color: #368cf9; 49 - } 50 - #suspend { 51 - background-image: image(url("icons/suspend.png")); 52 - background-color: #f4d3a7; 53 - } 54 - 55 - button:focus, 56 - button:active, 57 - button:hover { 58 - color: #FFFFFF; 59 - border: 3px solid #FFFFFF; 60 - background-color: #ffffff; 61 - }
+3 -46
home/modules/niri.nix
··· 7 7 8 8 { 9 9 imports = [ 10 - ./niri/anyrun.nix 11 10 ./niri/noctalia.nix 11 + ./niri/hyprlock.nix 12 + ./niri/wlogout.nix 12 13 13 14 inputs.niri.homeModules.niri 14 15 ··· 35 36 playerctl 36 37 killall 37 38 wvkbd 38 - wlogout 39 39 ]; 40 40 xdg.configFile."niri/scripts/osk.sh" = { 41 41 text = '' ··· 68 68 executable = true; 69 69 }; 70 70 71 - xdg.configFile."wlogout" = { 72 - source = ../../configs/wlogout; 73 - recursive = true; 74 - }; 71 + 75 72 programs.niri = { 76 73 enable = true; 77 74 package = pkgs.niri; ··· 566 563 567 564 # --- Debug --- 568 565 debug.honor-xdg-activation-with-invalid-serial = true; 569 - }; 570 - }; 571 - programs.hyprlock = { 572 - enable = true; 573 - settings = { 574 - background = [ 575 - { 576 - path = "screenshot"; 577 - blur_passes = 3; 578 - blur_size = 10; 579 - } 580 - ]; 581 - input-field = { 582 - size = "300,300"; 583 - outline_thickness = 3; 584 - dots_size = 0.33; # Scale of input-field height, 0.2 - 0.8 585 - dots_spacing = 0.15; # Scale of dots' absolute size, 0.0 - 1.0 586 - dots_center = true; 587 - dots_rounding = -1; # -1 default circle, -2 follow input-field rounding 588 - outer_color = "rgb(151515)"; 589 - inner_color = "rgb(FFFFFF)"; 590 - font_color = "rgb(10, 10, 10)"; 591 - fade_on_empty = false; 592 - fade_timeout = 1000; # Milliseconds before fade_on_empty is triggered. 593 - placeholder_text = "<i>  </i>"; # Text rendered in the input box when it's empty. 594 - hide_input = true; 595 - rounding = -1; # -1 means complete rounding (circle/oval) 596 - check_color = "rgb(204, 136, 34)"; 597 - fail_color = "rgb(204, 34, 34)"; # if authentication failed, changes outer_color and fail message color 598 - fail_text = ""; # can be set to empty 599 - fail_transition = 300; # transition time in ms between normal outer_color and fail_color 600 - capslock_color = -1; 601 - numlock_color = -1; 602 - bothlock_color = -1; # when both locks are active. -1 means don't change outer color (same for above) 603 - invert_numlock = false; # change color if numlock is off 604 - swap_font_color = false; # see below 605 - position = "0, -20"; 606 - halign = "center"; 607 - valign = "center"; 608 - }; 609 566 }; 610 567 }; 611 568 }
-109
home/modules/niri/anyrun.nix
··· 1 - { pkgs, ... }: 2 - 3 - { 4 - programs.anyrun = { 5 - enable = true; 6 - config = { 7 - x = { 8 - fraction = 0.5; 9 - }; 10 - y = { 11 - fraction = 0.2; 12 - }; 13 - width = { 14 - fraction = 0.5; 15 - }; 16 - hideIcons = false; 17 - ignoreExclusiveZones = false; 18 - layer = "overlay"; 19 - hidePluginInfo = true; 20 - closeOnClick = true; 21 - showResultsImmediately = false; 22 - maxEntries = null; 23 - 24 - plugins = [ 25 - "${pkgs.anyrun}/lib/libapplications.so" 26 - # "${pkgs.anyrun}/lib/libsymbols.so" 27 - ]; 28 - }; 29 - 30 - extraCss = /* css */ '' 31 - * { 32 - all: unset; 33 - font-family: Atkinson Hyperlegible Next; 34 - font-size: 1.3rem; 35 - } 36 - 37 - #window, 38 - #match, 39 - #entry, 40 - #plugin, 41 - #main { 42 - background: transparent; 43 - } 44 - 45 - #match.activatable { 46 - border-radius: 16px; 47 - padding: 0.3rem 0.9rem; 48 - margin-top: 0.01rem; 49 - } 50 - 51 - #match.activatable:first-child { 52 - margin-top: 0.7rem; 53 - } 54 - 55 - #match.activatable:last-child { 56 - margin-bottom: 0.6rem; 57 - } 58 - 59 - #plugin:hover #match.activatable { 60 - border-radius: 10px; 61 - padding: 0.3rem; 62 - margin-top: 0.01rem; 63 - margin-bottom: 0; 64 - } 65 - 66 - #match:selected, 67 - #match:hover, 68 - #plugin:hover { 69 - background: #2e3131; 70 - } 71 - 72 - #entry { 73 - background: #f4cccc; 74 - border: 3px solid rgb(255,77,77); 75 - color: #000000; 76 - border-radius: 16px; 77 - margin: 0.5rem; 78 - padding: 0.3rem 1rem; 79 - } 80 - 81 - list > #plugin { 82 - border-radius: 16px; 83 - margin: 0 0.3rem; 84 - } 85 - 86 - list > #plugin:first-child { 87 - margin-top: 0.3rem; 88 - } 89 - 90 - list > #plugin:last-child { 91 - margin-bottom: 0.3rem; 92 - } 93 - 94 - list > #plugin:hover { 95 - padding: 0.6rem; 96 - } 97 - 98 - box#main { 99 - background: #fa8071; 100 - box-shadow: 101 - inset 0 0 0 1px #0b0f10, 102 - 0 0 0 1px #0b0f10; 103 - border-radius: 24px; 104 - padding: 0.3rem; 105 - } 106 - ''; 107 - 108 - }; 109 - }
+42
home/modules/niri/hyprlock.nix
··· 1 + { 2 + programs.hyprlock = { 3 + enable = true; 4 + settings = { 5 + background = [ 6 + { 7 + path = "screenshot"; 8 + blur_passes = 3; 9 + blur_size = 10; 10 + } 11 + ]; 12 + input-field = { 13 + size = "300,300"; 14 + outline_thickness = 3; 15 + dots_size = 0.33; # Scale of input-field height, 0.2 - 0.8 16 + dots_spacing = 0.15; # Scale of dots' absolute size, 0.0 - 1.0 17 + dots_center = true; 18 + dots_rounding = -1; # -1 default circle, -2 follow input-field rounding 19 + outer_color = "rgb(151515)"; 20 + inner_color = "rgb(FFFFFF)"; 21 + font_color = "rgb(10, 10, 10)"; 22 + fade_on_empty = false; 23 + fade_timeout = 1000; # Milliseconds before fade_on_empty is triggered. 24 + placeholder_text = "<i>  </i>"; # Text rendered in the input box when it's empty. 25 + hide_input = true; 26 + rounding = -1; # -1 means complete rounding (circle/oval) 27 + check_color = "rgb(204, 136, 34)"; 28 + fail_color = "rgb(204, 34, 34)"; # if authentication failed, changes outer_color and fail message color 29 + fail_text = ""; # can be set to empty 30 + fail_transition = 300; # transition time in ms between normal outer_color and fail_color 31 + capslock_color = -1; 32 + numlock_color = -1; 33 + bothlock_color = -1; # when both locks are active. -1 means don't change outer color (same for above) 34 + invert_numlock = false; # change color if numlock is off 35 + swap_font_color = false; # see below 36 + position = "0, -20"; 37 + halign = "center"; 38 + valign = "center"; 39 + }; 40 + }; 41 + }; 42 + }
+120
home/modules/niri/wlogout.nix
··· 1 + { 2 + programs.wlogout = { 3 + enable = true; 4 + layout = [ 5 + { 6 + label = "lock"; 7 + action = "hyprlock"; 8 + text = "Lock"; 9 + keybind = "l"; 10 + } 11 + { 12 + label = "logout"; 13 + action = "niri msg action quit --skip-confirmation"; 14 + text = "Logout"; 15 + keybind = "e"; 16 + } 17 + 18 + { 19 + label = "shutdown"; 20 + action = "poweroff"; 21 + text = "Shutdown"; 22 + keybind = "s" 23 + ; 24 + } 25 + 26 + { 27 + label = "reboot"; 28 + action = "reboot"; 29 + text = "Reboot"; 30 + keybind = "r" 31 + ; 32 + } 33 + 34 + { 35 + label = "hibernate"; 36 + action = "niri msg action open-overview; niri msg action spawn -- hyprlock && systemctl hibernate"; 37 + text = "Hibernate"; 38 + keybind = "h" 39 + ; 40 + } 41 + 42 + { 43 + label = "suspend"; 44 + action = "niri msg action spawn -- hyprlock && systemctl suspend-then-hibernate"; 45 + text = "Sleep"; 46 + keybind = "z" 47 + ; 48 + } 49 + ]; 50 + style = '' 51 + 52 + * { 53 + font-family: "Lotion Black", FontAwesome, Roboto, Helvetica, Arial, sans-serif; 54 + background-image: none; 55 + transition: 20ms; 56 + box-shadow: none; 57 + } 58 + 59 + window { 60 + background-color: rgba(12, 12, 12, 0.8); 61 + } 62 + 63 + button { 64 + color: #FFFFFF; 65 + font-size:20px; 66 + margin: 10px; 67 + border-radius: 20px; 68 + background-repeat: no-repeat; 69 + background-position: center; 70 + background-size: 25%; 71 + background-color: unset; 72 + border-style: solid; 73 + border: 3px solid #FFFFFF; 74 + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); 75 + } 76 + 77 + #lock { 78 + background-image: image(url("icons/lock.png")); 79 + background-color: #7facb3; 80 + } 81 + 82 + #logout { 83 + background-image: image(url("icons/logout.png")); 84 + background-color: #ff4500; 85 + } 86 + 87 + #shutdown { 88 + background-image: image(url("icons/shutdown.png")); 89 + background-color: #8b0000; 90 + } 91 + 92 + #reboot { 93 + background-image: image(url("icons/reboot.png")); 94 + background-color: #556b2f; 95 + } 96 + 97 + #hibernate { 98 + background-image: image(url("icons/hibernate.png")); 99 + background-color: #368cf9; 100 + } 101 + #suspend { 102 + background-image: image(url("icons/suspend.png")); 103 + background-color: #f4d3a7; 104 + } 105 + 106 + button:focus, 107 + button:active, 108 + button:hover { 109 + color: #FFFFFF; 110 + border: 3px solid #FFFFFF; 111 + background-color: #ffffff; 112 + } 113 + ''; 114 + }; 115 + 116 + xdg.configFile."wlogout/icons" = { 117 + source = ../../../configs/wlogout-icons; 118 + recursive = true; 119 + }; 120 + }