Compare commits
	
		
			4 commits
		
	
	
		
			aeb8f52d6d
			...
			c653e73f2e
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| c653e73f2e | |||
| c416cbaab9 | |||
| fb9cd8b9e9 | |||
| 2316cb2d9c | 
					 9 changed files with 55 additions and 27 deletions
				
			
		|  | @ -2,7 +2,7 @@ | ||||||
|   description = "System configuration of my machines using flakes"; |   description = "System configuration of my machines using flakes"; | ||||||
| 
 | 
 | ||||||
|   inputs = { |   inputs = { | ||||||
|     nixpkgs.url = "nixpkgs/nixos-24.05"; |     nixpkgs.url = "nixpkgs/nixos-24.11"; | ||||||
|     nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; |     nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; | ||||||
| 
 | 
 | ||||||
|     devshell = { |     devshell = { | ||||||
|  | @ -11,7 +11,7 @@ | ||||||
|     }; |     }; | ||||||
|     flake-utils.url = "github:numtide/flake-utils"; |     flake-utils.url = "github:numtide/flake-utils"; | ||||||
|     home-manager = { |     home-manager = { | ||||||
|       url = "github:nix-community/home-manager/release-24.05"; |       url = "github:nix-community/home-manager/release-24.11"; | ||||||
|       inputs.nixpkgs.follows = "nixpkgs"; |       inputs.nixpkgs.follows = "nixpkgs"; | ||||||
|     }; |     }; | ||||||
|     openconnect-sso = { |     openconnect-sso = { | ||||||
|  | @ -41,9 +41,9 @@ | ||||||
|       unfreePackages = pkg: builtins.elem (nixpkgs.lib.getName pkg) [ |       unfreePackages = pkg: builtins.elem (nixpkgs.lib.getName pkg) [ | ||||||
|         "corefonts" |         "corefonts" | ||||||
|         "nvidia-settings" "nvidia-x11" "nvidia-persistenced" |         "nvidia-settings" "nvidia-x11" "nvidia-persistenced" | ||||||
|         "Oracle_VM_VirtualBox_Extension_Pack" |         "Oracle_VirtualBox_Extension_Pack" | ||||||
|         "spotify" |         "spotify" | ||||||
|         "steam" "steam-original" "steam-run" |         "steam" "steam-unwrapped" "steam-run" | ||||||
|         "vista-fonts" |         "vista-fonts" | ||||||
|         "nvidia-persistenced" # Docker |         "nvidia-persistenced" # Docker | ||||||
|       ]; |       ]; | ||||||
|  |  | ||||||
|  | @ -101,11 +101,9 @@ in { | ||||||
|       dejavu_fonts |       dejavu_fonts | ||||||
|       font-awesome |       font-awesome | ||||||
|       noto-fonts |       noto-fonts | ||||||
|       noto-fonts-cjk |       noto-fonts-cjk-sans | ||||||
|  |       noto-fonts-cjk-serif | ||||||
|       noto-fonts-emoji |       noto-fonts-emoji | ||||||
|       source-han-sans |  | ||||||
|       source-han-sans-japanese |  | ||||||
|       source-han-serif-japanese |  | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     security.polkit.enable = true; |     security.polkit.enable = true; | ||||||
|  |  | ||||||
|  | @ -37,9 +37,8 @@ in { | ||||||
| #    }; | #    }; | ||||||
| 
 | 
 | ||||||
|     hardware = { |     hardware = { | ||||||
|       opengl = { |       graphics = { | ||||||
|         enable = true; |         enable = true; | ||||||
|         driSupport = true; |  | ||||||
|         driSupport32Bit = true; |         driSupport32Bit = true; | ||||||
|       }; |       }; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -9,6 +9,6 @@ in { | ||||||
|     extraOptions = '' |     extraOptions = '' | ||||||
|       experimental-features = nix-command flakes |       experimental-features = nix-command flakes | ||||||
|     ''; |     ''; | ||||||
|     package = pkgs.nixFlakes; |     package = pkgs.nixVersions.stable; | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -6,8 +6,6 @@ in { | ||||||
|   options.sisyphus.services.pipewire.enable = lib.mkEnableOption "Pipewire"; |   options.sisyphus.services.pipewire.enable = lib.mkEnableOption "Pipewire"; | ||||||
| 
 | 
 | ||||||
|   config = lib.mkIf cfg.enable { |   config = lib.mkIf cfg.enable { | ||||||
|     sound.enable = true; |  | ||||||
|     hardware.pulseaudio.enable = false; |  | ||||||
|     security.rtkit.enable = true; |     security.rtkit.enable = true; | ||||||
|     services.pipewire = { |     services.pipewire = { | ||||||
|       enable = true; |       enable = true; | ||||||
|  | @ -20,6 +18,26 @@ in { | ||||||
|       # use the example session manager (no others are packaged yet so this is enabled by default, |       # use the example session manager (no others are packaged yet so this is enabled by default, | ||||||
|       # no need to redefine it in your config for now) |       # no need to redefine it in your config for now) | ||||||
|       #media-session.enable = true; |       #media-session.enable = true; | ||||||
|  | 
 | ||||||
|  |       wireplumber = { | ||||||
|  |         enable = true; | ||||||
|  |         # Fix pops after silence | ||||||
|  |         extraConfig."99-disable-suspend" = { | ||||||
|  |           "monitor.alsa.rules" = [ | ||||||
|  |             { | ||||||
|  |               matches = [ | ||||||
|  |                 # Headphone jack on laptop | ||||||
|  |                 { "node.name" = "alsa_output.pci-0000_00_1f.3.analog-stereo"; } | ||||||
|  |               ]; | ||||||
|  |               actions = { | ||||||
|  |                 update-props = { | ||||||
|  |                   "session.suspend-timeout-seconds" = 0; | ||||||
|  |                 }; | ||||||
|  |               }; | ||||||
|  |             } | ||||||
|  |           ]; | ||||||
|  |         }; | ||||||
|  |       }; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -10,6 +10,8 @@ in { | ||||||
|       enable = true; |       enable = true; | ||||||
|       # Because these are made for development purposes and not for servers |       # Because these are made for development purposes and not for servers | ||||||
|       enableOnBoot = false; |       enableOnBoot = false; | ||||||
|  | 
 | ||||||
|  |       daemon.settings.features.cdi = true; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     # Updated version of deprecated enableNvidia. |     # Updated version of deprecated enableNvidia. | ||||||
|  |  | ||||||
|  | @ -39,8 +39,10 @@ in { | ||||||
|       corefonts              # Calibri for Uni |       corefonts              # Calibri for Uni | ||||||
|       font-awesome           # Dependency of Vifm & zsh config |       font-awesome           # Dependency of Vifm & zsh config | ||||||
|       letter                 # Personal font |       letter                 # Personal font | ||||||
|       noto-fonts-cjk         # Dependency of Zellij config |       noto-fonts-cjk-sans    # Dependency of Zellij config | ||||||
|  |       noto-fonts-cjk-serif   # Dependency of Zellij config | ||||||
|       noto-fonts             # Dependency of Zellij config |       noto-fonts             # Dependency of Zellij config | ||||||
|  |       noto-fonts-emoji       # Dependency of Zellij config | ||||||
|       noto-fonts-color-emoji # Emoji's! |       noto-fonts-color-emoji # Emoji's! | ||||||
|       vistafonts             # Microsoft fonts |       vistafonts             # Microsoft fonts | ||||||
|     ]; |     ]; | ||||||
|  |  | ||||||
|  | @ -22,15 +22,15 @@ while getopts ":bvt:p:" options; do | ||||||
| 			;; | 			;; | ||||||
| 		v) | 		v) | ||||||
|             # Get volume (don't use pamixer because that is way slower) |             # Get volume (don't use pamixer because that is way slower) | ||||||
|             value=$( amixer sget 'Master' \ |             value=$( pactl get-sink-volume @DEFAULT_SINK@ \ | ||||||
|                 | grep -o '\[[0-9]*%\]' \ |                 | grep -o '[0-9]*%' \ | ||||||
|                 | tr -d '][%' \ |                 | tr -d '%' \ | ||||||
|                 | head -n1 ) |                 | head -n1 ) | ||||||
|             title="Volume: ${value}%" |             title="Volume: ${value}%" | ||||||
|             category='sysinfo' |             category='sysinfo' | ||||||
| 
 | 
 | ||||||
|             # If audio disabled, set value to zero. |             # If audio disabled, set value to zero. | ||||||
| 	    if [ "$( amixer sget 'Master' | grep -o '\[\(on\|off\)\]' | head -n1 )" == "[off]" ] ; then  |             if [ "$( pactl get-sink-mute @DEFAULT_SINK@ | grep -o '\(yes\|no\)' | head -n1 )" == 'yes' ] ; then  | ||||||
|                 title="Volume: ${value}% (Disabled)" |                 title="Volume: ${value}% (Disabled)" | ||||||
|                 value=0 |                 value=0 | ||||||
|             fi |             fi | ||||||
|  |  | ||||||
|  | @ -30,6 +30,10 @@ declare -A wallpaper | ||||||
| wallpaper[${THEME_LIGHT}]="bg-light" | wallpaper[${THEME_LIGHT}]="bg-light" | ||||||
| wallpaper[${THEME_DARK}]="bg-dark" | wallpaper[${THEME_DARK}]="bg-dark" | ||||||
| 
 | 
 | ||||||
|  | declare -A icon | ||||||
|  | icon[${THEME_LIGHT}]="\uf185" | ||||||
|  | icon[${THEME_DARK}]="\uf186" | ||||||
|  | 
 | ||||||
| ############# | ############# | ||||||
| ### Logic ### | ### Logic ### | ||||||
| ############# | ############# | ||||||
|  | @ -48,14 +52,14 @@ while getopts ":m:g" option; do | ||||||
|             fi |             fi | ||||||
|             ;; |             ;; | ||||||
|         g) |         g) | ||||||
|             previous_theme="$(cat ${STATE_FILE})" |             current_state="$(cat "${STATE_FILE}")" | ||||||
|             if [ "${previous_theme}" == "${THEME_LIGHT}" ]; then |             next_state="${theme_next[${current_state}]}" | ||||||
|                 class="activated" |             if [ "${current_state}" == "${THEME_DARK}" ]; then | ||||||
|                 percentage=1 |                 class='activated' | ||||||
|             else |                 percentage=100 | ||||||
|                 percentage=0 |  | ||||||
|             fi |             fi | ||||||
|             printf '{ "class": "%s", "percentage": %d }' "${class}" "${percentage}" |             printf '{"text": "%s", "alt": "%s", "tooltip": "Set theme to %s", "percentage": %d, "class": "%s"}' \ | ||||||
|  |                 "${icon[${current_state}]}" "${gsettings_alt[${next_state}]}" "${next_state}" "${percentage:=0}" "${class:="none"}" | ||||||
|             exit 0 |             exit 0 | ||||||
|             ;; |             ;; | ||||||
|         *) |         *) | ||||||
|  | @ -119,7 +123,12 @@ fi | ||||||
| # Sway | # Sway | ||||||
| if [ "$(command -v swaybg)" ]; then | if [ "$(command -v swaybg)" ]; then | ||||||
|     bg_path="${BG_DIR}/${wallpaper[${theme}]}" |     bg_path="${BG_DIR}/${wallpaper[${theme}]}" | ||||||
|     /run/current-system/sw/bin/cp "${bg_path}" "${STATE_DIR}/bg" && swaymsg reload & |     /run/current-system/sw/bin/cp "${bg_path}" "${STATE_DIR}/bg" | ||||||
|  |     if [ "$(command -v swaymsg)" ]; then | ||||||
|  |         pkill swaybg && swaymsg exec "swaybg -m fill -i ${STATE_DIR}/bg" & | ||||||
|  |     elif [ "$(command -v hyprctl)" ]; then | ||||||
|  |         pkill swaybg && hyprctl keyword exec "swaybg -m fill -i ${STATE_DIR}/bg" & | ||||||
|  |     fi | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| # Vifm | # Vifm | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue