Compare commits
No commits in common. "9e7d1f4db0d757c11e9539e8e53defcb5b23ef5d" and "a7c2c6262c4954ba857d3344502d570495e266d3" have entirely different histories.
9e7d1f4db0
...
a7c2c6262c
@ -3,7 +3,6 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
pkgs-stable,
|
pkgs-stable,
|
||||||
userSettings,
|
userSettings,
|
||||||
system,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
@ -17,7 +16,7 @@
|
|||||||
|
|
||||||
# Home manager
|
# Home manager
|
||||||
home-manager = {
|
home-manager = {
|
||||||
extraSpecialArgs = {inherit inputs system pkgs pkgs-stable userSettings;};
|
extraSpecialArgs = {inherit inputs pkgs pkgs-stable userSettings;};
|
||||||
backupFileExtension = "backup";
|
backupFileExtension = "backup";
|
||||||
users = {
|
users = {
|
||||||
${userSettings.username} = import ./home.nix;
|
${userSettings.username} = import ./home.nix;
|
||||||
|
|||||||
@ -3,7 +3,6 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
pkgs-stable,
|
pkgs-stable,
|
||||||
userSettings,
|
userSettings,
|
||||||
system,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
@ -18,7 +17,7 @@
|
|||||||
|
|
||||||
# Home manager
|
# Home manager
|
||||||
home-manager = {
|
home-manager = {
|
||||||
extraSpecialArgs = {inherit inputs system pkgs pkgs-stable userSettings;};
|
extraSpecialArgs = {inherit inputs pkgs pkgs-stable userSettings;};
|
||||||
backupFileExtension = "backup";
|
backupFileExtension = "backup";
|
||||||
users = {
|
users = {
|
||||||
${userSettings.username} = import ./home.nix;
|
${userSettings.username} = import ./home.nix;
|
||||||
@ -81,8 +80,8 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
inputs.install-script.packages.${system}.default
|
inputs.install-script.packages.x86_64-linux.default
|
||||||
inputs.shinya-nvf.packages.${system}.nvf
|
inputs.shinya-nvf.packages.x86_64-linux.nvf
|
||||||
];
|
];
|
||||||
|
|
||||||
#services.twingate.enable = true;
|
#services.twingate.enable = true;
|
||||||
|
|||||||
@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
userSettings,
|
userSettings,
|
||||||
pkgs,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# Home manager configuration
|
# Home manager configuration
|
||||||
|
|||||||
@ -10,8 +10,6 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf config.app_list.applications.enable {
|
config = lib.mkIf config.app_list.applications.enable {
|
||||||
services.arrpc.enable = true;
|
|
||||||
|
|
||||||
home.packages =
|
home.packages =
|
||||||
(with pkgs; [
|
(with pkgs; [
|
||||||
librewolf-wayland
|
librewolf-wayland
|
||||||
|
|||||||
@ -3,7 +3,6 @@
|
|||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
inputs,
|
inputs,
|
||||||
system,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
options = {
|
options = {
|
||||||
@ -25,7 +24,7 @@
|
|||||||
lazygit
|
lazygit
|
||||||
])
|
])
|
||||||
++ (
|
++ (
|
||||||
with inputs.ghostty.packages.${system}; [
|
with inputs.ghostty.packages.x86_64-linux; [
|
||||||
default
|
default
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|||||||
@ -29,15 +29,13 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
# XDG Portals configuration
|
# XDG Portals configuration
|
||||||
xdg.portal = {
|
xdg.portal.enable = true;
|
||||||
enable = true;
|
xdg.portal.config = {
|
||||||
config = {
|
|
||||||
common = {
|
common = {
|
||||||
default = ["hyprland"];
|
default = ["hyprland"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
extraPortals = [pkgs.xdg-desktop-portal-hyprland];
|
xdg.portal.extraPortals = [pkgs.xdg-desktop-portal-hyprland];
|
||||||
};
|
|
||||||
|
|
||||||
# Services for the Hyprland module
|
# Services for the Hyprland module
|
||||||
services.network-manager-applet.enable = true;
|
services.network-manager-applet.enable = true;
|
||||||
@ -327,7 +325,7 @@
|
|||||||
"opacity 0.80 0.80,class:^(qt6ct)$"
|
"opacity 0.80 0.80,class:^(qt6ct)$"
|
||||||
"opacity 0.80 0.80,class:^(kvantummanager)$"
|
"opacity 0.80 0.80,class:^(kvantummanager)$"
|
||||||
"opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$"
|
"opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$"
|
||||||
"opacity 0.80 0.70,class:^(.blueman-manager-wrapped)$"
|
"opacity 0.80 0.70,class:^(blueman-manager)$"
|
||||||
"opacity 0.80 0.70,class:^(nm-applet)$"
|
"opacity 0.80 0.70,class:^(nm-applet)$"
|
||||||
"opacity 0.80 0.70,class:^(nm-connection-editor)$"
|
"opacity 0.80 0.70,class:^(nm-connection-editor)$"
|
||||||
"opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$"
|
"opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$"
|
||||||
@ -373,7 +371,7 @@
|
|||||||
"float,class:^(nwg-look)$"
|
"float,class:^(nwg-look)$"
|
||||||
"float,class:^(org.kde.ark)$"
|
"float,class:^(org.kde.ark)$"
|
||||||
"float,class:^(org.pulseaudio.pavucontrol)$"
|
"float,class:^(org.pulseaudio.pavucontrol)$"
|
||||||
"float,class:^(.blueman-manager-wrapped)$"
|
"float,class:^(blueman-manager)$"
|
||||||
"float,class:^(nm-applet)$"
|
"float,class:^(nm-applet)$"
|
||||||
"float,class:^(nm-connection-editor)$"
|
"float,class:^(nm-connection-editor)$"
|
||||||
"float,class:^(org.kde.polkit-kde-authentication-agent-1)$"
|
"float,class:^(org.kde.polkit-kde-authentication-agent-1)$"
|
||||||
@ -405,7 +403,6 @@
|
|||||||
"workspace special,title:^(Spotify)$"
|
"workspace special,title:^(Spotify)$"
|
||||||
"float,class:^(post_processing_gui.py)$"
|
"float,class:^(post_processing_gui.py)$"
|
||||||
"float,title:^(Picture-in-Picture)$"
|
"float,title:^(Picture-in-Picture)$"
|
||||||
|
|
||||||
"pin,title:^(Picture-in-Picture)$"
|
"pin,title:^(Picture-in-Picture)$"
|
||||||
"move 1280 680,title:^(Picture-in-Picture)$"
|
"move 1280 680,title:^(Picture-in-Picture)$"
|
||||||
"float,title:^(KDE Connect)$"
|
"float,title:^(KDE Connect)$"
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
options = {
|
options = {
|
||||||
@ -9,160 +8,6 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf config.desktop.hyprland.hyprlock.enable {
|
config = lib.mkIf config.desktop.hyprland.hyprlock.enable {
|
||||||
home.packages = with pkgs; [
|
|
||||||
(writeShellScriptBin "battery-hyprlock"
|
|
||||||
''
|
|
||||||
# Get the current battery percentage
|
|
||||||
battery_percentage=$(${pkgs.toybox}/bin/cat /sys/class/power_supply/BAT1/capacity)
|
|
||||||
|
|
||||||
# Get the battery status (Charging or Discharging)
|
|
||||||
battery_status=$(${pkgs.toybox}/bin/cat /sys/class/power_supply/BAT1/status)
|
|
||||||
|
|
||||||
# Define the battery icons for each 10% segment
|
|
||||||
battery_icons=("" "" "" "" "" "" "" "" "" "")
|
|
||||||
|
|
||||||
# Define the charging icon
|
|
||||||
charging_icon=""
|
|
||||||
|
|
||||||
# Calculate the index for the icon array
|
|
||||||
# Ensure the index is within bounds (0 to 9) for battery percentages 0 to 100
|
|
||||||
icon_index=$((battery_percentage / 10))
|
|
||||||
|
|
||||||
# If the battery is 100%, use the last icon (index 9)
|
|
||||||
if [ "$battery_percentage" -eq 100 ]; then
|
|
||||||
icon_index=9
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get the corresponding icon
|
|
||||||
battery_icon=''${battery_icons[$icon_index]}
|
|
||||||
|
|
||||||
# Check if the battery is charging
|
|
||||||
if [ "$battery_status" = "Charging" ]; then
|
|
||||||
battery_icon="$charging_icon"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Output the battery percentage and icon
|
|
||||||
echo "$battery_percentage% $battery_icon"
|
|
||||||
'')
|
|
||||||
|
|
||||||
(writeShellScriptBin "playerctl-hyprlock"
|
|
||||||
''
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
echo "Usage: $0 --title | --artist | --album | --source | --source-symbol"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Function to get metadata using playerctl
|
|
||||||
get_metadata() {
|
|
||||||
key=$1
|
|
||||||
playerctl metadata --player=%any,chromium,firefox --format "{{ $key }}" 2>/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
# Check for arguments
|
|
||||||
|
|
||||||
# Function to determine the source and return an icon and text
|
|
||||||
get_source_info_symbol() {
|
|
||||||
trackid=$(get_metadata "mpris:trackid")
|
|
||||||
if [[ "$trackid" == *"firefox"* ]]; then
|
|
||||||
echo -e ""
|
|
||||||
elif [[ "$trackid" == *"spotify"* ]]; then
|
|
||||||
echo -e ""
|
|
||||||
elif [[ "$trackid" == *"chromium"* ]]; then
|
|
||||||
echo -e ""
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
get_source_info() {
|
|
||||||
trackid=$(get_metadata "mpris:trackid")
|
|
||||||
if [[ "$trackid" == *"firefox"* ]]; then
|
|
||||||
echo -e "Firefox"
|
|
||||||
elif [[ "$trackid" == *"spotify"* ]]; then
|
|
||||||
echo -e "Spotify"
|
|
||||||
elif [[ "$trackid" == *"chromium"* ]]; then
|
|
||||||
echo -e "Chrome"
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Function to truncate text with ellipsis if necessary
|
|
||||||
truncate_with_ellipsis() {
|
|
||||||
text=$1
|
|
||||||
max_length=$2
|
|
||||||
if [ ''${#text} -gt $max_length ]; then
|
|
||||||
echo "''${text:0:$((max_length - 3))}..."
|
|
||||||
else
|
|
||||||
echo "$text"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Parse the argument
|
|
||||||
case "$1" in
|
|
||||||
--title)
|
|
||||||
title=$(get_metadata "xesam:title")
|
|
||||||
if [ -z "$title" ]; then
|
|
||||||
echo ""
|
|
||||||
else
|
|
||||||
truncate_with_ellipsis "$title" 28 # Limit the output to 50 characters
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
--artist)
|
|
||||||
artist=$(get_metadata "xesam:artist")
|
|
||||||
if [ -z "$artist" ]; then
|
|
||||||
echo ""
|
|
||||||
else
|
|
||||||
truncate_with_ellipsis "$artist" 28 # Limit the output to 50 characters
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
--status-symbol)
|
|
||||||
status=$(playerctl status 2>/dev/null)
|
|
||||||
if [[ $status == "Playing" ]]; then
|
|
||||||
echo ""
|
|
||||||
elif [[ $status == "Paused" ]]; then
|
|
||||||
echo ""
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
--status)
|
|
||||||
status=$(playerctl status 2>/dev/null)
|
|
||||||
if [[ $status == "Playing" ]]; then
|
|
||||||
echo "Playing Now"
|
|
||||||
elif [[ $status == "Paused" ]]; then
|
|
||||||
echo "Paused"
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
--album)
|
|
||||||
album=$(playerctl metadata --player=%any,chromium,firefox --format "{{ xesam:album }}" 2>/dev/null)
|
|
||||||
if [[ -n $album ]]; then
|
|
||||||
echo "$album"
|
|
||||||
else
|
|
||||||
status=$(playerctl status 2>/dev/null)
|
|
||||||
if [[ -n $status ]]; then
|
|
||||||
echo "Not album"
|
|
||||||
else
|
|
||||||
truncate_with_ellipsis "$album" 28 # Limit the output to 50 characters
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
--source-symbol)
|
|
||||||
get_source_info_symbol
|
|
||||||
;;
|
|
||||||
--source)
|
|
||||||
get_source_info
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Invalid option: $1"
|
|
||||||
echo "Usage: $0 --title | --artist | --album | --source | --source-symbol"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac'')
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.hyprlock = {
|
programs.hyprlock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
@ -226,10 +71,9 @@
|
|||||||
valign = "center";
|
valign = "center";
|
||||||
};
|
};
|
||||||
|
|
||||||
label = [
|
label = {
|
||||||
{
|
|
||||||
monitor = "";
|
monitor = "";
|
||||||
text = "$TIME";
|
text = "$TIME $LAYOUT[!, cz, ru]";
|
||||||
color = "$text";
|
color = "$text";
|
||||||
font_size = 40;
|
font_size = 40;
|
||||||
#font_family = "Monaspace Xenon";
|
#font_family = "Monaspace Xenon";
|
||||||
@ -237,162 +81,7 @@
|
|||||||
position = "0, 80";
|
position = "0, 80";
|
||||||
halign = "center";
|
halign = "center";
|
||||||
valign = "center";
|
valign = "center";
|
||||||
}
|
};
|
||||||
# Battery percentage
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(battery-hyprlock)";
|
|
||||||
|
|
||||||
color = "$accent";
|
|
||||||
font_size = 12;
|
|
||||||
|
|
||||||
position = "-37, 29";
|
|
||||||
halign = "right";
|
|
||||||
valign = "bottom";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
# PLAYER TITTLE
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --title)";
|
|
||||||
|
|
||||||
color = "$fg0";
|
|
||||||
font_size = 14;
|
|
||||||
font_family = "$font-text";
|
|
||||||
|
|
||||||
position = "0, -400";
|
|
||||||
halign = "center";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER ARTIST
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --artist)";
|
|
||||||
|
|
||||||
color = "$fg0";
|
|
||||||
font_size = 11;
|
|
||||||
font_family = "$font-text";
|
|
||||||
|
|
||||||
position = "0, -420";
|
|
||||||
halign = "center";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER ALBUM
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --album)";
|
|
||||||
|
|
||||||
color = "$fg0";
|
|
||||||
font_size = 11;
|
|
||||||
font_family = "$font-text0";
|
|
||||||
|
|
||||||
position = "0, -445";
|
|
||||||
halign = "center";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER STATUS SYMBOL
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo (playerctl-hyprlock --status-symbol)";
|
|
||||||
|
|
||||||
color = "$fg0";
|
|
||||||
font_size = 16;
|
|
||||||
font_family = "$font-symbol";
|
|
||||||
|
|
||||||
position = "700, -370";
|
|
||||||
halign = "left";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER STATUS
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --status)";
|
|
||||||
|
|
||||||
color = "$fg0";
|
|
||||||
font_size = 10;
|
|
||||||
font_family = "$font-text";
|
|
||||||
|
|
||||||
position = "720, -370";
|
|
||||||
halign = "left";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER SOURCE SYMBOL
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --source-symbol)";
|
|
||||||
|
|
||||||
color = "rgba(255, 255, 255, 0.6)";
|
|
||||||
font_size = 16;
|
|
||||||
font_family = "$font-symbol";
|
|
||||||
|
|
||||||
position = "-720, -370";
|
|
||||||
halign = "right";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
# PLAYER SOURCE
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
text = "cmd[update:1000] echo $(playerctl-hyprlock --source)";
|
|
||||||
|
|
||||||
color = "rgba(255, 255, 255, 0.6)";
|
|
||||||
font_size = 10;
|
|
||||||
font_family = "$font-text";
|
|
||||||
|
|
||||||
position = "-740, -370";
|
|
||||||
halign = "right";
|
|
||||||
valign = "center";
|
|
||||||
zindex = 5;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
shape = [
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
size = "90, 40";
|
|
||||||
|
|
||||||
shadow_passes = "$text-shadow-pass";
|
|
||||||
shadow_boost = "$text-shadow-boost";
|
|
||||||
|
|
||||||
color = "$shape-col0";
|
|
||||||
rounding = "$shape-rd";
|
|
||||||
border_size = "";
|
|
||||||
border_color = "";
|
|
||||||
|
|
||||||
position = "-20, 20";
|
|
||||||
halign = "right";
|
|
||||||
valign = "bottom";
|
|
||||||
zindex = 1;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
monitor = "";
|
|
||||||
size = "550, 120";
|
|
||||||
|
|
||||||
shadow_passes = "$text-shadow-pass";
|
|
||||||
shadow_boost = "$text-shadow-boost";
|
|
||||||
|
|
||||||
color = "$shape-col1";
|
|
||||||
rounding = "$rounding";
|
|
||||||
border_size = "";
|
|
||||||
border_color = "";
|
|
||||||
|
|
||||||
position = "0, 70";
|
|
||||||
halign = "center";
|
|
||||||
valign = "bottom";
|
|
||||||
zindex = 1;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -12,7 +12,6 @@
|
|||||||
open = "rifle";
|
open = "rifle";
|
||||||
ip = "ip -c";
|
ip = "ip -c";
|
||||||
s = "kitten ssh";
|
s = "kitten ssh";
|
||||||
icat = "kitten icat";
|
|
||||||
diff = "diff --color";
|
diff = "diff --color";
|
||||||
respawn = "clear; ${pkgs.pfetch}/bin/pfetch";
|
respawn = "clear; ${pkgs.pfetch}/bin/pfetch";
|
||||||
mkdir = "mkdir -p";
|
mkdir = "mkdir -p";
|
||||||
|
|||||||
@ -22,6 +22,9 @@
|
|||||||
FLAKE = "/home/${userSettings.username}/.dotfiles";
|
FLAKE = "/home/${userSettings.username}/.dotfiles";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Default applications configuration
|
||||||
|
xdg.mime.enable = true;
|
||||||
|
|
||||||
xdg.da.browser =
|
xdg.da.browser =
|
||||||
if userSettings.browser == "qutebrowser"
|
if userSettings.browser == "qutebrowser"
|
||||||
then "org.qutebrowser.qutebrowser"
|
then "org.qutebrowser.qutebrowser"
|
||||||
@ -32,9 +35,7 @@
|
|||||||
else "firefox"
|
else "firefox"
|
||||||
);
|
);
|
||||||
|
|
||||||
xdg.mime = {
|
xdg.mime.defaultApplications = {
|
||||||
enable = true;
|
|
||||||
defaultApplications = {
|
|
||||||
"text/html" = "${config.xdg.da.browser}.desktop";
|
"text/html" = "${config.xdg.da.browser}.desktop";
|
||||||
"x-scheme-handler/http" = "${config.xdg.da.browser}.desktop";
|
"x-scheme-handler/http" = "${config.xdg.da.browser}.desktop";
|
||||||
"x-scheme-handler/https" = "${config.xdg.da.browser}.desktop";
|
"x-scheme-handler/https" = "${config.xdg.da.browser}.desktop";
|
||||||
@ -49,7 +50,6 @@
|
|||||||
"inode/directory" = "org.gnome.Nautilus.desktop";
|
"inode/directory" = "org.gnome.Nautilus.desktop";
|
||||||
"video/mp4" = "mpv.desktop";
|
"video/mp4" = "mpv.desktop";
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
programs.zsh.enable =
|
programs.zsh.enable =
|
||||||
if userSettings.shell == "zsh"
|
if userSettings.shell == "zsh"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user