mirror of
https://github.com/ublue-os/bazzite.git
synced 2025-02-04 03:39:58 +00:00
Merge pull request #99 from ublue-os/fix-conditionals
fix: Issues with conditionals
This commit is contained in:
commit
fc96121da1
@ -71,7 +71,7 @@ RUN rpm-ostree install \
|
||||
yad
|
||||
|
||||
# Configure KDE & GNOME
|
||||
RUN if grep -v "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
RUN if grep -qv "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
rpm-ostree override replace \
|
||||
--experimental \
|
||||
--from repo=copr:copr.fedorainfracloud.org:kylegospo:gnome-vrr \
|
||||
@ -100,14 +100,15 @@ RUN if grep -v "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
gnome-shell-extension-user-theme \
|
||||
gnome-shell-extension-appindicator \
|
||||
gnome-shell-extension-gsconnect \
|
||||
gnome-shell-extension-system76-scheduler && \
|
||||
gnome-shell-extension-system76-scheduler \
|
||||
openssh-askpass && \
|
||||
rpm-ostree override remove \
|
||||
gnome-tour \
|
||||
yelp \
|
||||
; fi
|
||||
|
||||
# Install ROCM on non-Nvidia images
|
||||
RUN if grep -v "nvidia" <<< "${IMAGE_NAME}"; then \
|
||||
RUN if grep -qv "nvidia" <<< "${IMAGE_NAME}"; then \
|
||||
rpm-ostree install \
|
||||
rocm-hip \
|
||||
rocm-opencl \
|
||||
@ -144,7 +145,7 @@ RUN rm /usr/share/applications/shredder.desktop && \
|
||||
systemctl --global enable ublue-update.timer && \
|
||||
systemctl enable displaylink.service && \
|
||||
systemctl enable input-remapper.service && \
|
||||
if grep "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
if grep -q "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
systemctl disable gdm.service && \
|
||||
systemctl enable sddm.service && \
|
||||
rm /usr/share/applications/yad-icon-browser.desktop \
|
||||
@ -187,7 +188,7 @@ RUN rpm-ostree install \
|
||||
RUN rpm-ostree override remove \
|
||||
ddccontrol \
|
||||
ddccontrol-gtk && \
|
||||
if grep -v "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
if grep -qv "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
rpm-ostree override remove \
|
||||
steamdeck-kde-presets-desktop \
|
||||
; fi
|
||||
@ -208,7 +209,7 @@ RUN rpm-ostree override replace \
|
||||
udisks2
|
||||
|
||||
# Configure KDE & GNOME
|
||||
RUN if grep -v "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
RUN if grep -qv "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
rpm-ostree override remove \
|
||||
krfb \
|
||||
krfb-libs && \
|
||||
@ -260,10 +261,10 @@ RUN rm /usr/share/applications/winetricks.desktop && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
|
||||
mv /etc/sddm.conf /etc/sddm.conf.d/steamos.conf && \
|
||||
if grep "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
if grep -q "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
systemctl enable gnome-autologin.service \
|
||||
; fi && \
|
||||
if grep -v "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
if grep -qv "gnome" <<< "${IMAGE_NAME}"; then \
|
||||
systemctl enable plasma-autologin.service \
|
||||
; fi && \
|
||||
systemctl enable jupiter-fan-control.service && \
|
||||
|
@ -1,5 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Source Bazzite defaults
|
||||
source /etc/default/bazzite
|
||||
|
||||
# Simply launches the "yafti" GUI with the uBlue image's configuration.
|
||||
/usr/bin/yafti /usr/share/ublue-os/firstboot/yafti.yml
|
||||
|
||||
|
@ -47,25 +47,11 @@ screens:
|
||||
default: true
|
||||
packages:
|
||||
- Enable Gamescope Autologin: just --unstable enable-gamescope-autologin
|
||||
Gradience:
|
||||
description: Adds Valve-inspired themes to Gradience
|
||||
condition:
|
||||
run: grep "gnome" <<< $(rpm-ostree status)
|
||||
default: true
|
||||
packages:
|
||||
- Setup Gradience: just --unstable setup-gradience
|
||||
Greenlight:
|
||||
description: A utility for xCloud and xHome streaming
|
||||
default: false
|
||||
packages:
|
||||
- Retrieve Greenlight: just --unstable get-greenlight
|
||||
GSConnect:
|
||||
condition:
|
||||
run: grep "gnome" <<< $(rpm-ostree status)
|
||||
description: A KDE connect implementation for GNOME
|
||||
default: true
|
||||
packages:
|
||||
- Enable GSConnect: just --unstable enable-gsconnect
|
||||
Hide GRUB Menu:
|
||||
description: |
|
||||
NOTE: Press the escape key before boot to show the menu
|
||||
@ -118,19 +104,12 @@ screens:
|
||||
default: true
|
||||
packages:
|
||||
- Enable System76 Scheduler: just --unstable enable-system76-scheduler
|
||||
Wallpaper Engine:
|
||||
description: Enables Wallpaper Engine
|
||||
condition:
|
||||
run: grep -v "gnome" <<< $(rpm-ostree status)
|
||||
default: true
|
||||
packages:
|
||||
- Enable Wallpaper Engine: just --unstable enable-wallpaper-engine
|
||||
can-we-modify-your-flatpaks:
|
||||
source: yafti.screen.consent
|
||||
values:
|
||||
title: Setting up Flathub
|
||||
condition:
|
||||
run: flatpak remotes --system | grep fedora
|
||||
run: flatpak remotes --system | grep -q fedora
|
||||
description: |
|
||||
WARNING: This will modify your Flatpaks if you are rebasing! If you do not want to do this exit the installer.
|
||||
actions:
|
||||
@ -252,18 +231,25 @@ screens:
|
||||
- Bitwarden: com.bitwarden.desktop
|
||||
- Calibre: com.calibre_ebook.calibre
|
||||
- Fedora Media Writer: org.fedoraproject.MediaWriter
|
||||
- Flatseal Permissions Manager: com.github.tchx84.Flatseal
|
||||
- KeePassXC: org.keepassxc.KeePassXC
|
||||
- OpenRGB: org.openrgb.OpenRGB
|
||||
- qBittorrent: org.qbittorrent.qBittorrent
|
||||
- Syncthing: com.github.zocker_160.SyncThingy
|
||||
- VLC: org.videolan.VLC
|
||||
setup-desktop-environment:
|
||||
source: yafti.screen.consent
|
||||
values:
|
||||
title: Setting up your Desktop Environment
|
||||
description: |
|
||||
Configures your desktop environment, including needed plugins/extensions.
|
||||
actions:
|
||||
- run: just --unstable setup-desktop-environment
|
||||
theme:
|
||||
source: yafti.screen.title
|
||||
values:
|
||||
title: "GNOME Theme"
|
||||
condition:
|
||||
run: grep "gnome" <<< $(rpm-ostree status)
|
||||
run: [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]
|
||||
links:
|
||||
- "Vapor Theme":
|
||||
run: just --unstable enable-vapor-theme
|
||||
|
@ -1,18 +1,20 @@
|
||||
enable-gamescope-autologin:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
systemctl disable --now gnome-autologin
|
||||
else
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
systemctl disable --now plasma-autologin
|
||||
fi
|
||||
systemctl enable --now gamescope-autologin
|
||||
|
||||
enable-desktop-autologin:
|
||||
#!/usr/bin/env bash
|
||||
source /etc/default/bazzite
|
||||
systemctl disable --now gamescope-autologin
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
systemctl enable --now gnome-autologin
|
||||
else
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
systemctl enable --now plasma-autologin
|
||||
fi
|
||||
|
||||
@ -44,7 +46,8 @@ get-steamcmd:
|
||||
|
||||
install-extensions-cli:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
pip install --upgrade gnome-extensions-cli
|
||||
else
|
||||
echo "This is only supported under GNOME."
|
||||
@ -52,17 +55,18 @@ install-extensions-cli:
|
||||
|
||||
enable-system76-scheduler:
|
||||
#!/usr/bin/env bash
|
||||
echo 'Installing System76-Scheduler plugin for KDE...'
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
echo 'Installing System76-Scheduler plugin for KDE...'
|
||||
git clone https://github.com/maxiberta/kwin-system76-scheduler-integration.git --depth 1 /tmp/kwin-system76-scheduler-integration
|
||||
kpackagetool5 --type=KWin/Script -i /tmp/kwin-system76-scheduler-integration
|
||||
systemctl --user enable --now com.system76.Scheduler.dbusproxy.service
|
||||
systemctl enable --now com.system76.Scheduler.service
|
||||
kcmshell5 kcm_kwin_scripts
|
||||
rm -rf /tmp/kwin-system76-scheduler-integration
|
||||
else
|
||||
gsettings set org.gnome.shell enabled-extensions ['appindicatorsupport@rgcjonas.gmail.com', 'gsconnect@andyholmes.github.io', 's76-scheduler@mattjakeman.com', 'tofumenu@tofu', 'user-theme@gnome-shell-extensions.gcampax.github.com']
|
||||
gsettings set org.gnome.shell.extensions.fedora-menu menu-button-icon-size 20
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
echo 'Enabling System76-Scheduler GNOME extension...'
|
||||
gnome-shell-extension-cl -e s76-scheduler@mattjakeman.com
|
||||
fi
|
||||
|
||||
install-nix:
|
||||
@ -83,29 +87,31 @@ get-boilr:
|
||||
-O ~/Desktop/BoilR
|
||||
chmod +x ~/Desktop/BoilR
|
||||
|
||||
enable-wallpaper-engine:
|
||||
setup-desktop-environment:
|
||||
#!/usr/bin/env bash
|
||||
if grep -v "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
echo 'Configuring GNOME extensions...'
|
||||
gnome-shell-extension-cl -d background-logo@fedorahosted.org
|
||||
gnome-shell-extension-cl -e appindicatorsupport@rgcjonas.gmail.com
|
||||
gnome-shell-extension-cl -e gsconnect@andyholmes.github.io
|
||||
gnome-shell-extension-cl -e tofumenu@tofu
|
||||
gsettings set org.gnome.shell.extensions.fedora-menu menu-button-icon-size 20
|
||||
mkdir -p $HOME/.config/presets/user/
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vapor.json
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vgui2.json
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
echo 'Installing Wallpaper Engine Plugin for KDE...'
|
||||
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git --depth 1 /tmp/wallpaper-engine-kde-plugin
|
||||
plasmapkg2 -i /tmp/wallpaper-engine-kde-plugin/plugin
|
||||
rm -rf /tmp/wallpaper-engine-kde-plugin
|
||||
else
|
||||
echo "This is only supported under KDE."
|
||||
fi
|
||||
|
||||
setup-gradience:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vapor.json
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vgui2.json
|
||||
else
|
||||
echo "This is only supported under GNOME."
|
||||
fi
|
||||
|
||||
enable-vapor-theme:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
gnome-shell-extension-cl -e user-theme@gnome-shell-extensions.gcampax.github.com
|
||||
gsettings set org.gnome.desktop.wm.preferences button-layout appmenu:minimize,maximize,close
|
||||
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
@ -119,7 +125,9 @@ enable-vapor-theme:
|
||||
|
||||
enable-vgui2-theme:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
gnome-shell-extension-cl -e user-theme@gnome-shell-extensions.gcampax.github.com
|
||||
gsettings set org.gnome.desktop.wm.preferences button-layout appmenu:minimize,maximize,close
|
||||
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
@ -134,7 +142,7 @@ enable-vgui2-theme:
|
||||
deckswap-on:
|
||||
#!/usr/bin/env bash
|
||||
STATUS=$(systemctl status deckswap.service)
|
||||
if grep 'inactive' <<< ${STATUS}; then
|
||||
if grep -q 'inactive' <<< ${STATUS}; then
|
||||
systemctl enable deckswap.service
|
||||
echo 'deckswap enabled. Please reboot.'
|
||||
else
|
||||
@ -144,7 +152,7 @@ deckswap-on:
|
||||
deckswap-off:
|
||||
#!/usr/bin/env bash
|
||||
STATUS=$(systemctl status deckswap.service)
|
||||
if grep -v 'inactive' <<< ${STATUS}; then
|
||||
if grep -qv 'inactive' <<< ${STATUS}; then
|
||||
systemctl disable deckswap.service
|
||||
echo 'deckswap disabled. Please reboot.'
|
||||
else
|
||||
@ -154,7 +162,7 @@ deckswap-off:
|
||||
resize-deckswap:
|
||||
#!/usr/bin/env bash
|
||||
CONFIG='/etc/default/deckswap'
|
||||
CURRENT_SIZE=$(cat "${CONFIG}" | grep "SWAP_SIZE" | sed 's/SWAP_SIZE=//g')
|
||||
CURRENT_SIZE=$(cat "${CONFIG}" | grep -q "SWAP_SIZE" | sed 's/SWAP_SIZE=//g')
|
||||
echo 'Current size: '${CURRENT_SIZE}
|
||||
read -p 'Enter new size (1-16) in gigabytes (1G): ' NEW_SIZE
|
||||
if [ -z "${NEW_SIZE//[0-9]}" ]; then
|
||||
@ -181,7 +189,7 @@ set-btrfs-flags:
|
||||
#!/usr/bin/env bash
|
||||
echo 'Configuring drive mount parameters...'
|
||||
sudo sed -i 's/compress=zstd:1/noatime,lazytime,commit=120,compress-force=zstd:1,space_cache=v2,discard=async/g' /etc/fstab
|
||||
if grep '64GB' <<< $(lsblk -o MODEL); then
|
||||
if grep -q '64GB' <<< $(lsblk -o MODEL); then
|
||||
echo 'Increasing compression for detected 64GB eMMC'
|
||||
sudo sed -i 's/compress-force=zstd:1/compress-force=zstd:3/g' /etc/fstab
|
||||
fi
|
||||
@ -192,7 +200,7 @@ switch-to-ext4:
|
||||
zram-on:
|
||||
#!/usr/bin/env bash
|
||||
KARGS=$(rpm-ostree kargs)
|
||||
if grep 'zram' <<< ${KARGS}; then
|
||||
if grep -q 'zram' <<< ${KARGS}; then
|
||||
rpm-ostree kargs --delete=zram
|
||||
echo 'ZRAM enabled. Please reboot.'
|
||||
else
|
||||
@ -202,7 +210,7 @@ zram-on:
|
||||
zram-off:
|
||||
#!/usr/bin/env bash
|
||||
KARGS=$(rpm-ostree kargs)
|
||||
if grep -v 'zram' <<< ${KARGS}; then
|
||||
if grep -qv 'zram' <<< ${KARGS}; then
|
||||
rpm-ostree kargs --append=zram=0
|
||||
echo 'ZRAM disabled. Please reboot.'
|
||||
else
|
||||
@ -212,8 +220,8 @@ zram-off:
|
||||
resize-zram:
|
||||
#!/usr/bin/env bash
|
||||
CONFIG='/etc/systemd/zram-generator.conf'
|
||||
if grep "zram-size" <<< $(cat ${CONFIG}); then
|
||||
CURRENT_SIZE=$(cat "${CONFIG}" | grep "zram-size" | sed 's/zram-size=//g')
|
||||
if grep -q "zram-size" <<< $(cat ${CONFIG}); then
|
||||
CURRENT_SIZE=$(cat "${CONFIG}" | grep -q "zram-size" | sed 's/zram-size=//g')
|
||||
else
|
||||
CURRENT_SIZE=1024
|
||||
fi
|
||||
@ -224,7 +232,7 @@ resize-zram:
|
||||
NEW_SIZE=1024
|
||||
fi
|
||||
if ((${NEW_SIZE} >= 512 && ${NEW_SIZE} <= 4096)); then
|
||||
if grep "zram-size" <<< $(cat ${CONFIG}); then
|
||||
if grep -q "zram-size" <<< $(cat ${CONFIG}); then
|
||||
sudo sed -i 's/zram-size='${CURRENT_SIZE}'/zram-size='${NEW_SIZE}'/g' ${CONFIG}
|
||||
else
|
||||
sudo -A echo "zram-size=${NEW_SIZE}" >> ${CONFIG}
|
||||
|
@ -2,3 +2,4 @@ net.davidotek.pupgui2
|
||||
org.freedesktop.Platform.VulkanLayer.MangoHud//22.08
|
||||
org.freedesktop.Platform.VulkanLayer.vkBasalt//22.08
|
||||
org.mozilla.firefox
|
||||
com.github.tchx84.Flatseal
|
||||
|
@ -1,2 +1,8 @@
|
||||
SUDO_ASKPASS='/usr/bin/ksshaskpass'
|
||||
#!/usr/bin/env bash
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
SUDO_ASKPASS='/usr/bin/ksshaskpass'
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
SUDO_ASKPASS='/usr/libexec/openssh/gnome-ssh-askpass'
|
||||
fi
|
||||
export SUDO_ASKPASS
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
source /etc/default/bazzite
|
||||
|
||||
if [[ -f '/etc/flatpak/install' ]]; then
|
||||
cp -r /etc/flatpak/flathub/* /var/lib/flatpak/repo/refs/remotes/flathub
|
||||
@ -15,7 +16,7 @@ if [[ -f '/etc/flatpak/remove' ]]; then
|
||||
fi
|
||||
|
||||
if [[ -f '/etc/flatpak/deck' ]]; then
|
||||
if grep "deck" <<< $(rpm-ostree status); then
|
||||
if [[ ${IMAGE_NAME} == *'deck'* ]]; then
|
||||
cat /etc/flatpak/deck | while read line; do
|
||||
flatpak install --system --noninteractive --no-pull flathub $line
|
||||
done && cat /etc/flatpak/deck >> /etc/flatpak/installed
|
||||
|
@ -1,4 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Source Bazzite defaults
|
||||
source /etc/default/bazzite
|
||||
|
||||
# Simply launches the "yafti" GUI with the uBlue image's configuration.
|
||||
/usr/bin/yafti /usr/share/ublue-os/firstboot/yafti.yml
|
||||
|
@ -9,6 +9,37 @@ screens:
|
||||
icon: "/usr/share/ublue-os/bazzite/logo.svg"
|
||||
description: |
|
||||
Configure your system to get started
|
||||
configure-bazzite-arch:
|
||||
source: yafti.screen.package
|
||||
values:
|
||||
title: Configure Bazzite Arch
|
||||
condition:
|
||||
run: grep -qv "bazzite-arch" <<< $(distrobox list)
|
||||
show_terminal: true
|
||||
package_manager: yafti.plugin.run
|
||||
groups:
|
||||
Install Bazzite Arch:
|
||||
description: This will install an Arch distrobox configured for gaming
|
||||
default: true
|
||||
packages:
|
||||
- Install Bazzite Arch: just --unstable install-bazzite-arch
|
||||
Export Launchers:
|
||||
description: This exports Steam and Lutris
|
||||
default: true
|
||||
packages:
|
||||
- Export Steam: distrobox-enter -n bazzite-arch -- ' distrobox-export --app steam'
|
||||
- Export Lutris: distrobox-enter -n bazzite-arch -- ' distrobox-export --app lutris'
|
||||
Export Utilities:
|
||||
description: This exports SteamCMD and protontricks
|
||||
default: true
|
||||
packages:
|
||||
- Export SteamCMD: just --unstable export-steamcmd
|
||||
- Export Protontricks: distrobox-enter -n bazzite-arch -- ' distrobox-export --app protontricks'
|
||||
Autostart Steam:
|
||||
description: Starts Steam after logging in
|
||||
default: true
|
||||
packages:
|
||||
- Autostart Steam: cp ~/.local/share/applications/bazzite-arch-steam.desktop ~/.config/autostart/bazzite-arch-steam-silent.desktop && sed -i 's@/usr/bin/steam-runtime %U@/usr/bin/steam-runtime -silent %U@g' ~/.config/autostart/bazzite-arch-steam-silent.desktop
|
||||
configure-bazzite:
|
||||
source: yafti.screen.package
|
||||
values:
|
||||
@ -16,37 +47,11 @@ screens:
|
||||
show_terminal: true
|
||||
package_manager: yafti.plugin.run
|
||||
groups:
|
||||
Bazzite Arch Distrobox:
|
||||
description: This will install an Arch distrobox configured for gaming. Steam and Lutris will then be exported.
|
||||
default: true
|
||||
condition:
|
||||
run: distrobox list | grep -v bazzite-arch
|
||||
packages:
|
||||
- Install Bazzite Arch: just --unstable install-bazzite-arch
|
||||
- Export Steam: distrobox-enter -n bazzite-arch -- ' distrobox-export --app steam'
|
||||
- Export SteamCMD: just --unstable export-steamcmd
|
||||
- Export Lutris: distrobox-enter -n bazzite-arch -- ' distrobox-export --app lutris'
|
||||
- Export Protontricks: distrobox-enter -n bazzite-arch -- ' distrobox-export --app protontricks'
|
||||
- Autostart Steam: cp ~/.local/share/applications/bazzite-arch-steam.desktop ~/.config/autostart/bazzite-arch-steam-silent.desktop && sed -i 's@/usr/bin/steam-runtime %U@/usr/bin/steam-runtime -silent %U@g' ~/.config/autostart/bazzite-arch-steam-silent.desktop
|
||||
Automatic Duplicate File Removal:
|
||||
description: Flattens duplicate files to take up no more space than a single copy, a considerable space savings for wine prefixes and compatdata
|
||||
default: true
|
||||
packages:
|
||||
- Enable Duperemove: systemctl enable --now duperemove-weekly@$(systemd-escape $HOME).timer
|
||||
CoreCtrl:
|
||||
description: AMD GPU Overclocking
|
||||
condition:
|
||||
run: grep -v "nvidia" <<< $(rpm-ostree status)
|
||||
default: false
|
||||
packages:
|
||||
- Install CoreCtrl: just --unstable install-corectrl
|
||||
Gradience:
|
||||
description: Adds Valve-inspired themes to Gradience
|
||||
condition:
|
||||
run: grep "gnome" <<< $(rpm-ostree status)
|
||||
default: true
|
||||
packages:
|
||||
- Setup Gradience: just --unstable setup-gradience
|
||||
Greenlight:
|
||||
description: A utility for xCloud and xHome streaming
|
||||
default: false
|
||||
@ -78,31 +83,52 @@ screens:
|
||||
default: true
|
||||
packages:
|
||||
- Set SteamOS BTRFS mount flags: sudo -A just --unstable set-btrfs-flags
|
||||
Supergfxctl:
|
||||
condition:
|
||||
run: grep "nvidia" <<< $(rpm-ostree status)
|
||||
description: A utility for Nvidia GPU switching
|
||||
default: false
|
||||
packages:
|
||||
- Enable supergfxctl: just --unstable enable-supergfxctl
|
||||
System76 Scheduler:
|
||||
description: Enables System76 scheduler
|
||||
default: true
|
||||
packages:
|
||||
- Enable System76 Scheduler: just --unstable enable-system76-scheduler
|
||||
Wallpaper Engine:
|
||||
description: Enables Wallpaper Engine
|
||||
amd-additions:
|
||||
source: yafti.screen.package
|
||||
values:
|
||||
title: AMD Additions
|
||||
condition:
|
||||
run: [[ ${IMAGE_FLAVOR} == 'main' ]]
|
||||
show_terminal: true
|
||||
package_manager: yafti.plugin.run
|
||||
groups:
|
||||
CoreCtrl:
|
||||
description: AMD GPU Overclocking
|
||||
condition:
|
||||
run: grep -v "gnome" <<< $(rpm-ostree status)
|
||||
default: true
|
||||
run: grep -qv "nvidia" <<< $(cat /etc/default/bazzite)
|
||||
default: false
|
||||
packages:
|
||||
- Enable Wallpaper Engine: just --unstable enable-wallpaper-engine
|
||||
- Install CoreCtrl: just --unstable install-corectrl
|
||||
nvidia-additions:
|
||||
source: yafti.screen.package
|
||||
values:
|
||||
title: Nvidia Additions
|
||||
condition:
|
||||
run: [[ ${IMAGE_FLAVOR} == 'nvidia' ]]
|
||||
show_terminal: true
|
||||
package_manager: yafti.plugin.run
|
||||
groups:
|
||||
GreenWithEnvy:
|
||||
description: Nvidia GPU Overclocking
|
||||
default: false
|
||||
packages:
|
||||
- Install GreenWithEnvy: flatpak install --user --noninteractive com.leinardi.gwe
|
||||
Supergfxctl:
|
||||
description: A utility for Nvidia GPU switching
|
||||
default: false
|
||||
packages:
|
||||
- Enable Supergfxctl: just --unstable enable-supergfxctl
|
||||
can-we-modify-your-flatpaks:
|
||||
source: yafti.screen.consent
|
||||
values:
|
||||
title: Setting up Flathub
|
||||
condition:
|
||||
run: flatpak remotes --system | grep fedora
|
||||
run: flatpak remotes --system | grep -q fedora
|
||||
description: |
|
||||
WARNING: This will modify your Flatpaks if you are rebasing! If you do not want to do this exit the installer.
|
||||
actions:
|
||||
@ -225,20 +251,26 @@ screens:
|
||||
- Calibre: com.calibre_ebook.calibre
|
||||
- Easy Effects: com.github.wwmm.easyeffects
|
||||
- Fedora Media Writer: org.fedoraproject.MediaWriter
|
||||
- Flatseal Permissions Manager: com.github.tchx84.Flatseal
|
||||
- GreenWithEnvy (Nvidia GPU Overclocking): com.leinardi.gwe
|
||||
- JamesDSP: me.timschneeberger.jdsp4linux
|
||||
- KeePassXC: org.keepassxc.KeePassXC
|
||||
- OpenRGB: org.openrgb.OpenRGB
|
||||
- qBittorrent: org.qbittorrent.qBittorrent
|
||||
- Syncthing: com.github.zocker_160.SyncThingy
|
||||
- VLC: org.videolan.VLC
|
||||
setup-desktop-environment:
|
||||
source: yafti.screen.consent
|
||||
values:
|
||||
title: Setting up your Desktop Environment
|
||||
description: |
|
||||
Configures your desktop environment, including needed plugins/extensions.
|
||||
actions:
|
||||
- run: just --unstable setup-desktop-environment
|
||||
theme:
|
||||
source: yafti.screen.title
|
||||
values:
|
||||
title: "GNOME Theme"
|
||||
condition:
|
||||
run: grep "gnome" <<< $(rpm-ostree status)
|
||||
run: [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]
|
||||
links:
|
||||
- "Vapor Theme":
|
||||
run: just --unstable enable-vapor-theme
|
||||
|
@ -1,7 +1,7 @@
|
||||
install-bazzite-arch:
|
||||
#!/usr/bin/env bash
|
||||
KARGS=$(rpm-ostree kargs)
|
||||
if grep 'nvidia' <<< ${KARGS}; then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${IMAGE_FLAVOR} == 'nvidia' ]]; then
|
||||
echo 'Installing Bazzite Arch (Nvidia)...'
|
||||
distrobox assemble create --file /usr/share/ublue-os/distrobox/bazzite-arch-nvidia
|
||||
else
|
||||
@ -28,9 +28,10 @@ remove-nix:
|
||||
|
||||
enable-big-picture:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
systemctl enable --now gnome-autologin
|
||||
else
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
systemctl enable --now plasma-autologin
|
||||
fi
|
||||
sed -i 's@/usr/bin/steam-runtime -silent %U@/usr/bin/steam-runtime -bigpicture %U@g' ~/.config/autostart/bazzite-arch-steam-silent.desktop
|
||||
@ -43,7 +44,8 @@ get-greenlight:
|
||||
|
||||
install-extensions-cli:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
pip install --upgrade gnome-extensions-cli
|
||||
else
|
||||
echo "This is only supported under GNOME."
|
||||
@ -51,51 +53,52 @@ install-extensions-cli:
|
||||
|
||||
enable-system76-scheduler:
|
||||
#!/usr/bin/env bash
|
||||
echo 'Installing System76-Scheduler plugin for KDE...'
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
echo 'Installing System76-Scheduler plugin for KDE...'
|
||||
git clone https://github.com/maxiberta/kwin-system76-scheduler-integration.git --depth 1 /tmp/kwin-system76-scheduler-integration
|
||||
kpackagetool5 --type=KWin/Script -i /tmp/kwin-system76-scheduler-integration
|
||||
systemctl --user enable --now com.system76.Scheduler.dbusproxy.service
|
||||
systemctl enable --now com.system76.Scheduler.service
|
||||
kcmshell5 kcm_kwin_scripts
|
||||
rm -rf /tmp/kwin-system76-scheduler-integration
|
||||
else
|
||||
gsettings set org.gnome.shell enabled-extensions ['appindicatorsupport@rgcjonas.gmail.com', 'gsconnect@andyholmes.github.io', 's76-scheduler@mattjakeman.com', 'tofumenu@tofu', 'user-theme@gnome-shell-extensions.gcampax.github.com']
|
||||
gsettings set org.gnome.shell.extensions.fedora-menu menu-button-icon-size 20
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
echo 'Enabling System76-Scheduler GNOME extension...'
|
||||
gnome-shell-extension-cl -e s76-scheduler@mattjakeman.com
|
||||
fi
|
||||
|
||||
enable-supergfxctl:
|
||||
#!/usr/bin/env bash
|
||||
status=$(rpm-ostree status)
|
||||
if grep "nvidia" <<< ${status}; then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${IMAGE_FLAVOR} == 'nvidia' ]]; then
|
||||
systemctl enable --now supergfxd.service
|
||||
else
|
||||
echo "This requires an Nvidia image."
|
||||
fi
|
||||
|
||||
enable-wallpaper-engine:
|
||||
setup-desktop-environment:
|
||||
#!/usr/bin/env bash
|
||||
if grep -v "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
echo 'Configuring GNOME extensions...'
|
||||
gnome-shell-extension-cl -d background-logo@fedorahosted.org
|
||||
gnome-shell-extension-cl -e appindicatorsupport@rgcjonas.gmail.com
|
||||
gnome-shell-extension-cl -e gsconnect@andyholmes.github.io
|
||||
mkdir -p $HOME/.config/presets/user/
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vapor.json
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vgui2.json
|
||||
elif [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
|
||||
echo 'Installing Wallpaper Engine Plugin for KDE...'
|
||||
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git --depth 1 /tmp/wallpaper-engine-kde-plugin
|
||||
plasmapkg2 -i /tmp/wallpaper-engine-kde-plugin/plugin
|
||||
rm -rf /tmp/wallpaper-engine-kde-plugin
|
||||
else
|
||||
echo "This is only supported under KDE."
|
||||
fi
|
||||
|
||||
setup-gradience:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vapor.json
|
||||
gradience-cli import -p /usr/share/ublue-os/bazzite/themes/vgui2.json
|
||||
else
|
||||
echo "This is only supported under GNOME."
|
||||
fi
|
||||
|
||||
enable-vapor-theme:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
gnome-shell-extension-cl -e user-theme@gnome-shell-extensions.gcampax.github.com
|
||||
gsettings set org.gnome.desktop.wm.preferences button-layout appmenu:minimize,maximize,close
|
||||
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
@ -103,13 +106,15 @@ enable-vapor-theme:
|
||||
gsettings set org.gnome.desktop.background picture-uri-dark file:///usr/share/backgrounds/steamdeck/Steam\ Deck\ Logo\ Default.jpg
|
||||
gradience-cli flatpak-overrides -e both
|
||||
gradience-cli apply -p /usr/share/ublue-os/bazzite/themes/vapor.json
|
||||
else
|
||||
else
|
||||
echo "This is only supported under GNOME."
|
||||
fi
|
||||
|
||||
enable-vgui2-theme:
|
||||
#!/usr/bin/env bash
|
||||
if grep "gnome" <<< $(rpm-ostree status); then
|
||||
source /etc/default/bazzite
|
||||
if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
|
||||
gnome-shell-extension-cl -e user-theme@gnome-shell-extensions.gcampax.github.com
|
||||
gsettings set org.gnome.desktop.wm.preferences button-layout appmenu:minimize,maximize,close
|
||||
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
@ -128,7 +133,7 @@ set-btrfs-flags:
|
||||
zram-on:
|
||||
#!/usr/bin/env bash
|
||||
KARGS=$(rpm-ostree kargs)
|
||||
if grep 'zram' <<< ${KARGS}; then
|
||||
if grep -q 'zram' <<< ${KARGS}; then
|
||||
rpm-ostree kargs --delete=zram
|
||||
echo 'ZRAM enabled. Please reboot.'
|
||||
else
|
||||
@ -138,7 +143,7 @@ zram-on:
|
||||
zram-off:
|
||||
#!/usr/bin/env bash
|
||||
KARGS=$(rpm-ostree kargs)
|
||||
if grep -v 'zram' <<< ${KARGS}; then
|
||||
if grep -qv 'zram' <<< ${KARGS}; then
|
||||
rpm-ostree kargs --append=zram=0
|
||||
echo 'ZRAM disabled. Please reboot.'
|
||||
else
|
||||
@ -148,7 +153,7 @@ zram-off:
|
||||
resize-zram:
|
||||
#!/usr/bin/env bash
|
||||
CONFIG='/etc/systemd/zram-generator.conf'
|
||||
if grep "zram-size" <<< $(cat ${CONFIG}); then
|
||||
if grep -q "zram-size" <<< $(cat ${CONFIG}); then
|
||||
CURRENT_SIZE=$(cat "${CONFIG}" | grep "zram-size" | sed 's/zram-size=//g')
|
||||
else
|
||||
CURRENT_SIZE=1024
|
||||
|
@ -7,3 +7,4 @@ com.mattjakeman.ExtensionManager
|
||||
org.gtk.Gtk3theme.adw-gtk3
|
||||
org.gtk.Gtk3theme.adw-gtk3-dark
|
||||
org.mozilla.firefox
|
||||
com.github.tchx84.Flatseal
|
||||
|
275
system_files/desktop/silverblue/usr/bin/gnome-shell-extension-cl
Executable file
275
system_files/desktop/silverblue/usr/bin/gnome-shell-extension-cl
Executable file
@ -0,0 +1,275 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2016
|
||||
# Alexandru Catalin Petrini <alexandru.c.petrini@gmail.com>
|
||||
# This script is intended to usefully manage gnome-shell extensions,
|
||||
# in compatible Gnome Shell versions.
|
||||
|
||||
# Install this script by running this command:
|
||||
# $ sudo wget https://raw.githubusercontent.com/cyberalex4life/gnome-shell-extension-cl/master/gnome-shell-extension-cl -O /usr/local/bin/gnome-shell-extension-cl && sudo chmod +x /usr/local/bin/gnome-shell-extension-cl
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
function get_enabled_extensions() {
|
||||
enabled_extensions=( $(gsettings get org.gnome.shell enabled-extensions | \
|
||||
sed -e 's|^@as ||g' | tr -d "[",",","]","\'") )
|
||||
}
|
||||
|
||||
|
||||
function print_enabled_extensions(){
|
||||
get_enabled_extensions
|
||||
for enabled_extension in "${enabled_extensions[@]}"
|
||||
do
|
||||
echo "$enabled_extension"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
function get_installed_extensions() {
|
||||
global_installed_extensions=( $(find "/usr/share/gnome-shell/extensions/" \
|
||||
-maxdepth 1 -type d -name "*@*" -exec \
|
||||
/usr/bin/basename {} \;) )
|
||||
local_installed_extensions=( $(find "$HOME/.local/share/gnome-shell/extensions/" \
|
||||
-maxdepth 1 -type d -name "*@*" -exec \
|
||||
/usr/bin/basename {} \;) )
|
||||
|
||||
if [ ${#local_installed_extensions[@]} -gt ${#global_installed_extensions[@]} ]
|
||||
then
|
||||
installed_extensions=( ${local_installed_extensions[@]} )
|
||||
test_extensions=( ${global_installed_extensions[@]} )
|
||||
else
|
||||
installed_extensions=( ${global_installed_extensions[@]} )
|
||||
test_extensions=( ${local_installed_extensions[@]} )
|
||||
fi
|
||||
for test_extension in "${test_extensions[@]}"
|
||||
do
|
||||
test_extension_not_doubled=true
|
||||
for installed_extension in "${installed_extensions[@]}"
|
||||
do
|
||||
if [ "$test_extension" = "$installed_extension" ]
|
||||
then
|
||||
test_extension_not_doubled=false
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ $test_extension_not_doubled = true ]
|
||||
then
|
||||
test_extension=( $test_extension )
|
||||
installed_extensions=( "${installed_extensions[@]}" "${test_extension[@]}" )
|
||||
#echo ${test_extension[@]}
|
||||
fi
|
||||
done
|
||||
echo "${installed_extensions[@]}"
|
||||
}
|
||||
|
||||
|
||||
function print_installed_extensions() {
|
||||
installed_extensions=( $(get_installed_extensions) )
|
||||
for installed_extension in "${installed_extensions[@]}"
|
||||
do
|
||||
[ "$(check_extension_is_enabled "$installed_extension")" = true ] && \
|
||||
status="enabled" || status="disabled";
|
||||
printf "%-65s - %-10s \n" "$installed_extension" "$status"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
function check_extension_is_enabled() {
|
||||
extension_to_check=$1
|
||||
enabled_extensions=( $(gsettings get org.gnome.shell enabled-extensions | \
|
||||
sed -e 's|^@as ||g' | tr -d "[",",","]","\'") )
|
||||
for enabled_extension in "${enabled_extensions[@]}"
|
||||
do
|
||||
if [ "$enabled_extension" = "$extension_to_check" ]
|
||||
then
|
||||
echo true
|
||||
return
|
||||
fi
|
||||
done
|
||||
echo false
|
||||
}
|
||||
|
||||
|
||||
function check_extension_in_all_extensions() {
|
||||
extension_to_check=$1
|
||||
installed_extensions=( $(get_installed_extensions) )
|
||||
for installed_extension in "${installed_extensions[@]}"
|
||||
do
|
||||
if [ "$installed_extension" = "$extension_to_check" ]
|
||||
then
|
||||
echo true
|
||||
return
|
||||
fi
|
||||
done
|
||||
echo false
|
||||
}
|
||||
|
||||
|
||||
function version_greater() {
|
||||
minimal_version=3.18.0
|
||||
our_version=$(gnome-shell --version | awk '{print $3}')
|
||||
if [ "$(echo "$our_version $minimal_version" | tr " " "\n" | sort -V | head -n 1)" != "$our_version" ]
|
||||
then
|
||||
echo true
|
||||
else
|
||||
echo false
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
function disable_extension() {
|
||||
|
||||
arguments=("$@")
|
||||
unset "arguments[0]"
|
||||
|
||||
for extension_to_disable in "${arguments[@]}"
|
||||
do
|
||||
|
||||
if [ "$(check_extension_in_all_extensions "$extension_to_disable")" = false ]
|
||||
then
|
||||
echo "'$extension_to_disable' is not installed."
|
||||
continue
|
||||
fi
|
||||
if [ "$(check_extension_is_enabled "$extension_to_disable")" = false ]
|
||||
then
|
||||
echo "'$extension_to_disable' is already disabled."
|
||||
continue
|
||||
fi
|
||||
if [ "$(version_greater)" = true ]
|
||||
then
|
||||
gnome-shell-extension-tool -d "$extension_to_disable"
|
||||
continue
|
||||
fi
|
||||
enabled_extensions=( $(gsettings get org.gnome.shell enabled-extensions | \
|
||||
tr -d "[",",","]","\'") )
|
||||
enabled_extensions_string=""
|
||||
for enabled_extension in "${enabled_extensions[@]}"
|
||||
do
|
||||
if [ "$enabled_extension" != "$extension_to_disable" ]
|
||||
then
|
||||
enabled_extensions_string="$enabled_extensions_string '$enabled_extension', "
|
||||
fi
|
||||
done
|
||||
enabled_extensions_string=${enabled_extensions_string:1:-2}
|
||||
enabled_extensions_string="[ $enabled_extensions_string ]"
|
||||
|
||||
dbus-launch gsettings set org.gnome.shell enabled-extensions "$enabled_extensions_string"
|
||||
|
||||
done
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
function enable_extension() {
|
||||
|
||||
arguments=("$@")
|
||||
unset "arguments[0]"
|
||||
|
||||
for extension_to_enable in "${arguments[@]}"
|
||||
do
|
||||
|
||||
if [ "$(check_extension_in_all_extensions "$extension_to_enable")" = false ]
|
||||
then
|
||||
echo "'$extension_to_enable' is not installed."
|
||||
continue
|
||||
fi
|
||||
if [ "$(check_extension_is_enabled "$extension_to_enable")" = true ]
|
||||
then
|
||||
echo "'$extension_to_enable' is already enabled."
|
||||
continue
|
||||
fi
|
||||
if [ "$(version_greater)" = true ]
|
||||
then
|
||||
gnome-shell-extension-tool -e "$extension_to_enable"
|
||||
continue
|
||||
fi
|
||||
enabled_extensions_string=$(gsettings get org.gnome.shell enabled-extensions | tr -d "]")
|
||||
[ "$enabled_extensions_string" != "@as [" ] && delimiter=,
|
||||
enabled_extensions_string="${enabled_extensions_string}${delimiter} '$extension_to_enable' ]"
|
||||
|
||||
gsettings set org.gnome.shell enabled-extensions "$enabled_extensions_string"
|
||||
|
||||
done
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
function disable_all_extensions() {
|
||||
get_enabled_extensions
|
||||
for enabled_extension in "${enabled_extensions[@]}"
|
||||
do
|
||||
# Don't disable user-theme extensions to avoid breaking them
|
||||
if [ "$enabled_extension" != "user-theme" ] && \
|
||||
[ "$enabled_extension" != "user-themes" ] && \
|
||||
[ "$enabled_extension" != "user-theme@gnome-shell-extensions.gcampax.github.com" ]
|
||||
then
|
||||
disable_extension "this element will be ignored" "$enabled_extension"
|
||||
else
|
||||
continue
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
function print_help() {
|
||||
|
||||
printf "
|
||||
GNOME Shell Extension Control Tool:
|
||||
|
||||
usage: gnome-shell-extensions <option> [extension name]
|
||||
|
||||
Options
|
||||
-h, --help Display help message.
|
||||
-e, --enable-extension <extension name> Enable extension.
|
||||
-d, --disable-extension <extension name> Disable extension.
|
||||
-da, --disable-all-extensions Disables all extensions.
|
||||
-le, --list-enabled List enabled extensions.
|
||||
-l, --list List all extensions + state info.
|
||||
-s, --status <extension name> Show status of extension.
|
||||
\n"
|
||||
|
||||
}
|
||||
|
||||
|
||||
# -------------------------------------------------------------------------------
|
||||
|
||||
case $1 in
|
||||
-h|--help)
|
||||
print_help
|
||||
;;
|
||||
-e|--enable-extension)
|
||||
enable_extension "$@"
|
||||
;;
|
||||
-d|--disable-extension)
|
||||
disable_extension "$@"
|
||||
;;
|
||||
-da|--disable-all-extensions)
|
||||
disable_all_extensions
|
||||
;;
|
||||
-le|--list-enabled)
|
||||
print_enabled_extensions
|
||||
;;
|
||||
-l|--list)
|
||||
print_installed_extensions
|
||||
;;
|
||||
-s|--status)
|
||||
if [ "$(check_extension_is_enabled "$2")" = true ]
|
||||
then
|
||||
echo "enabled"
|
||||
else
|
||||
echo "disabled"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
print_help
|
||||
;;
|
||||
esac
|
Loading…
x
Reference in New Issue
Block a user