aboutsummaryrefslogtreecommitdiffci
path: root/config.sh
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
authorGravatar Luya Tshimbalanga <luya@fedoraproject.org> 2026-10-19 21:23:14 -0700
committerGravatar Luya Tshimbalanga <luya@fedoraproject.org> 2026-10-19 21:23:14 -0700
commitd80d231d8be8d63d4a1ce22a3cf09c73b04b934b (patch)
tree8c8a8eb9cea49eea1766ef0843b346ad862b0781 /config.sh
parent9bb164948b699fdd81b5bb67449189dede0d5686 (diff)
downloadkiwi-descriptions-d80d231d8be8d63d4a1ce22a3cf09c73b04b934b.tar.gz
kiwi-descriptions-d80d231d8be8d63d4a1ce22a3cf09c73b04b934b.zip
Refresh Design Suite launchers and GNOME defaults
Add a Penpot web launcher and include it in GNOME favorites. Improve documentation launcher descriptions and use symbolic icons available in adwaita-icon-theme. Overwrite generated files instead of appending, quote heredocs, and set desktop files to mode 0644. Restrict Powerline initialization to interactive Bash sessions with runtime availability checks. Move GNOME favorites into a dedicated Design Suite schema override and validate schemas before rebuilding the cache.
Diffstat (limited to 'config.sh')
-rwxr-xr-xconfig.sh128
1 files changed, 83 insertions, 45 deletions
diff --git a/config.sh b/config.sh
index c342f4b..6862f75 100755
--- a/config.sh
+++ b/config.sh
@@ -342,66 +342,104 @@ EOF
fi
if [[ "$kiwi_profiles" == *"Design_suite"* ]]; then
-# Add link to lists of tutorials
-cat >> /usr/share/applications/list-design-tutorials.desktop << FOE
+ # Add a launcher for Design Suite tutorials.
+ cat > /usr/share/applications/list-design-tutorials.desktop << 'EOF'
[Desktop Entry]
-Name=List of design tutorials
-GenericName=List of Tutorials for Designers
-Comment=Reference of Design Related Tutorials
-Exec=xdg-open https://fedoraproject.org/wiki/Design_Suite/Tutorials
Type=Application
-Icon=applications-graphics
+Name=Design Suite Tutorials
+Comment=Explore tutorials for creative applications
+Exec=xdg-open https://fedoraproject.org/wiki/Design_Suite/Tutorials
+TryExec=xdg-open
+Icon=help-browser-symbolic
+Terminal=false
Categories=Graphics;Documentation;
-FOE
-chmod a+x /usr/share/applications/list-design-tutorials.desktop
+Keywords=Design;Tutorials;Learning;Fedora;
+EOF
-# Add information about Fedora Design Suite
-cat >> /usr/share/applications/fedora-design-suite.desktop << FOE
+ # Add a launcher for information about Fedora Design Suite.
+ cat > /usr/share/applications/fedora-design-suite.desktop << 'EOF'
[Desktop Entry]
-Name=Design Suite Info
-GenericName=About Design Suite
-Comment=Wiki page of Design Suite
-Exec=xdg-open https://fedoraproject.org/wiki/Design_Suite
Type=Application
-Icon=applications-internet
-Categories=Documentation;
-FOE
-chmod a+x /usr/share/applications/fedora-design-suite.desktop
+Name=Fedora Design Suite
+Comment=Learn about the creative tools included in Fedora Design Suite
+Exec=xdg-open https://fedoraproject.org/wiki/Design_Suite
+TryExec=xdg-open
+Icon=applications-graphics-symbolic
+Terminal=false
+Categories=Graphics;Documentation;
+Keywords=Design;Creative;Fedora;
+EOF
-# Add information about Fedora Design Team
-cat >> /usr/share/applications/fedora-design-team.desktop << FOE
+ # Add a launcher for Fedora Design Team documentation.
+ cat > /usr/share/applications/fedora-design-team.desktop << 'EOF'
[Desktop Entry]
-Name=Design Team Info
-GenericName=About Design Team
-Comment=Documentation about Design Team
+Type=Application
+Name=Fedora Design Team
+Comment=Explore Fedora design documentation and contribution opportunities
Exec=xdg-open https://docs.fedoraproject.org/en-US/design/
+TryExec=xdg-open
+Icon=system-users-symbolic
+Terminal=false
+Categories=Graphics;Documentation;
+Keywords=Design;Contribute;Community;Fedora;
+EOF
+
+ # Add a launcher for Penpot's web application.
+ cat > /usr/share/applications/penpot.desktop << 'EOF'
+[Desktop Entry]
Type=Application
-Icon=applications-internet
-Categories=Documentation;
-FOE
-chmod a+x /usr/share/applications/fedora-design-team.desktop
+Name=Penpot
+GenericName=Interface Design
+Comment=Collaborate on interface designs, wireframes, and prototypes
+Exec=xdg-open https://penpot.app/
+TryExec=xdg-open
+Icon=applications-graphics-symbolic
+Terminal=false
+Categories=Graphics;Development;WebDevelopment;
+Keywords=Design;Interface;Wireframe;Prototype;Collaboration;
+EOF
+
+ chmod 0644 \
+ /usr/share/applications/list-design-tutorials.desktop \
+ /usr/share/applications/fedora-design-suite.desktop \
+ /usr/share/applications/fedora-design-team.desktop \
+ /usr/share/applications/penpot.desktop
-# Use Powerline in bash
-cat >> /etc/profile.d/powerline-shell.sh << FOE
-# Enable powerline daemon
-if [ -f `which powerline-daemon` ]; then
- powerline-daemon -q
- POWERLINE_BASH_CONTINUATION=1
- POWERLINE_BASH_SELECT=1
- . /usr/share/powerline/bash/powerline.sh
+ # Enable Powerline only for interactive Bash sessions.
+ # Keep runtime checks literal while generating the profile script.
+ cat > /etc/profile.d/powerline-shell.sh << 'EOF'
+# Configure Powerline for interactive Bash sessions.
+if [ -n "${BASH_VERSION:-}" ]; then
+ case $- in
+ *i*)
+ if command -v powerline-daemon >/dev/null 2>&1 &&
+ [ -r /usr/share/powerline/bash/powerline.sh ]; then
+ powerline-daemon -q
+ POWERLINE_BASH_CONTINUATION=1
+ POWERLINE_BASH_SELECT=1
+ . /usr/share/powerline/bash/powerline.sh
+ fi
+ ;;
+ esac
fi
-FOE
-chmod 644 /etc/profile.d/powerline-shell.sh
-# End powerline override
+EOF
+
+ chmod 0644 /etc/profile.d/powerline-shell.sh
-# Override the favorite desktop application in Dash
-cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE
+ # Configure default GNOME Shell favorites.
+ cat > /usr/share/glib-2.0/schemas/90-design-suite.gschema.override << 'EOF'
[org.gnome.shell]
-favorite-apps=['org.mozilla.firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop', 'krita.desktop', 'inkscape.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'kdenlive.desktop', 'nautilus.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']
-FOE
+favorite-apps=['org.mozilla.firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop', 'krita.desktop', 'inkscape.desktop', 'penpot.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'kdenlive.desktop', 'nautilus.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']
+EOF
+
+ chmod 0644 \
+ /usr/share/glib-2.0/schemas/90-design-suite.gschema.override
-# Rebuild schema cache with any overrides we installed
-glib-compile-schemas /usr/share/glib-2.0/schemas
+ # Validate schema definitions and overrides, then rebuild the cache.
+ glib-compile-schemas --strict --dry-run \
+ /usr/share/glib-2.0/schemas
+ glib-compile-schemas \
+ /usr/share/glib-2.0/schemas
fi
if [[ "$kiwi_profiles" == *"SoaS"* ]]; then