mirror of
https://github.com/theupriser/steamify-cachyos.git
synced 2026-10-15 21:15:24 +02:00
Dock icon: ship the icon as a PNG and refer to it by name (GNOME can't always draw the SVG)
This commit is contained in:
1 parent
0c46b209b9
commit
6f575448cf
5 files changed
+25
-5
No files matched your search
@@ -34,7 +34,7 @@ jobs:
|
|||||||
.github/tools/bundle.sh dist/steamify.sh
|
.github/tools/bundle.sh dist/steamify.sh
|
||||||
# The app: sources, not the single-file build (its backend mode runs
|
# The app: sources, not the single-file build (its backend mode runs
|
||||||
# steamify.sh from its own folder).
|
# steamify.sh from its own folder).
|
||||||
tar -czf dist/steamify-app.tar.gz steamify.sh lib patches services ui assets/steam-gaming-settings.svg LICENSE.md
|
tar -czf dist/steamify-app.tar.gz steamify.sh lib patches services ui assets/steam-gaming-settings.svg assets/steam-gaming-settings.png LICENSE.md
|
||||||
cp ui/steamify-app.sh dist/steamify-app.sh
|
cp ui/steamify-app.sh dist/steamify-app.sh
|
||||||
|
|
||||||
- name: Check
|
- name: Check
|
||||||
@@ -119,7 +119,7 @@ jobs:
|
|||||||
|
|
||||||
## Changes in v$VERSION
|
## Changes in v$VERSION
|
||||||
$changes"
|
$changes"
|
||||||
gh release create "v$VERSION" dist/steamify.sh dist/steamify-app.sh dist/steamify-app.tar.gz assets/steam-gaming-settings.svg \
|
gh release create "v$VERSION" dist/steamify.sh dist/steamify-app.sh dist/steamify-app.tar.gz assets/steam-gaming-settings.svg assets/steam-gaming-settings.png \
|
||||||
--target "$GITHUB_SHA" --title "Steamify CachyOS v$VERSION" --notes "$notes" --latest
|
--target "$GITHUB_SHA" --title "Steamify CachyOS v$VERSION" --notes "$notes" --latest
|
||||||
|
|
||||||
# "latest" follows the newest version tag, for the older install URL
|
# "latest" follows the newest version tag, for the older install URL
|
||||||
@@ -132,7 +132,7 @@ jobs:
|
|||||||
else
|
else
|
||||||
gh release create latest --title "Steamify CachyOS - latest (v$VERSION)" --notes "$latest_notes" --latest=false
|
gh release create latest --title "Steamify CachyOS - latest (v$VERSION)" --notes "$latest_notes" --latest=false
|
||||||
fi
|
fi
|
||||||
gh release upload latest dist/steamify.sh dist/steamify-app.sh dist/steamify-app.tar.gz assets/steam-gaming-settings.svg --clobber
|
gh release upload latest dist/steamify.sh dist/steamify-app.sh dist/steamify-app.tar.gz assets/steam-gaming-settings.svg assets/steam-gaming-settings.png --clobber
|
||||||
|
|
||||||
# The mirror (Gitea) publishes its own release per version too, the same way: never overwrites one,
|
# The mirror (Gitea) publishes its own release per version too, the same way: never overwrites one,
|
||||||
# notes from the changelog. gh can't talk to Gitea: its API for the check, a Gitea release action to
|
# notes from the changelog. gh can't talk to Gitea: its API for the check, a Gitea release action to
|
||||||
@@ -191,6 +191,7 @@ jobs:
|
|||||||
dist/steamify-app.sh
|
dist/steamify-app.sh
|
||||||
dist/steamify-app.tar.gz
|
dist/steamify-app.tar.gz
|
||||||
assets/steam-gaming-settings.svg
|
assets/steam-gaming-settings.svg
|
||||||
|
assets/steam-gaming-settings.png
|
||||||
|
|
||||||
# A new version starts the Steamify ISO's release of the ISO repo: its iso-1-github-tag.yml (always run from
|
# A new version starts the Steamify ISO's release of the ISO repo: its iso-1-github-tag.yml (always run from
|
||||||
# master) names the ISO after the newest Steamify release, tags it, and the Gitea mirror builds and attaches the ISO.
|
# master) names the ISO after the newest Steamify release, tags it, and the Gitea mirror builds and attaches the ISO.
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ one per merged pull request.
|
|||||||
- **feat: GNOME support (the "SteamOS theme for GNOME" option, GDM session switching, the GNOME launcher/notifier/tray behaviour): the Vapor colors, the Steam Deck wallpaper, Ubuntu Dock, Tiling Assistant, Desktop Icons NG, AppIndicator and Steamify's own Vapor shell extension, with Switch to Desktop remembering KDE or GNOME. Prototype work since 2.12.0: `5dfc916`, `fc28ea4`, `ae12c1b`, `2b84e6a`, `c5b59d9`, `62a30e6`, `039f269`, `12eb562`, `c7f5f51`, `7904833`, `ce1aa1b`, `ab3b581`, `eaa3f28`, `4221ae6`, `8432f63`, `09ef0b1`, `68342e7`, `0e0bf57`, `7a84b0d`, `dbaeaa1`**
|
- **feat: GNOME support (the "SteamOS theme for GNOME" option, GDM session switching, the GNOME launcher/notifier/tray behaviour): the Vapor colors, the Steam Deck wallpaper, Ubuntu Dock, Tiling Assistant, Desktop Icons NG, AppIndicator and Steamify's own Vapor shell extension, with Switch to Desktop remembering KDE or GNOME. Prototype work since 2.12.0: `5dfc916`, `fc28ea4`, `ae12c1b`, `2b84e6a`, `c5b59d9`, `62a30e6`, `039f269`, `12eb562`, `c7f5f51`, `7904833`, `ce1aa1b`, `ab3b581`, `eaa3f28`, `4221ae6`, `8432f63`, `09ef0b1`, `68342e7`, `0e0bf57`, `7a84b0d`, `dbaeaa1`**
|
||||||
- `2ca288d` **fix: the NVIDIA gaming mode setup no longer fails with "the patched gamescope doesn't start" on a gamescope that works: the smoke test judged gamescope's exit status through a pipe into `grep -q` under `pipefail`, so gamescope's crash on the closed pipe (or a hung shutdown) counted as a failed test, intermittently, for the CPU-specific and the generic build alike (seen on an RTX 5080). The test now reads gamescope's output from a file and kills a hung shutdown (`timeout -k`)**
|
- `2ca288d` **fix: the NVIDIA gaming mode setup no longer fails with "the patched gamescope doesn't start" on a gamescope that works: the smoke test judged gamescope's exit status through a pipe into `grep -q` under `pipefail`, so gamescope's crash on the closed pipe (or a hung shutdown) counted as a failed test, intermittently, for the CPU-specific and the generic build alike (seen on an RTX 5080). The test now reads gamescope's output from a file and kills a hung shutdown (`timeout -k`)**
|
||||||
- `645b331` **feat: the GNOME theme installs GNOME Settings with the "GNOME Desktop" panel (dock, desktop icons, tiling) as a prebuilt package, downloaded from the `settings` release of steamify-gnome-theme (built by GitHub Actions on current Arch, rebuilt weekly) and checked against its `.sha256`; a failure keeps the stock Settings. Turning the theme off puts the stock `gnome-control-center` back. Installs with the GNOME theme on re-apply it (feature version 2.13.0)**
|
- `645b331` **feat: the GNOME theme installs GNOME Settings with the "GNOME Desktop" panel (dock, desktop icons, tiling) as a prebuilt package, downloaded from the `settings` release of steamify-gnome-theme (built by GitHub Actions on current Arch, rebuilt weekly) and checked against its `.sha256`; a failure keeps the stock Settings. Turning the theme off puts the stock `gnome-control-center` back. Installs with the GNOME theme on re-apply it (feature version 2.13.0)**
|
||||||
|
- **fix: the app's icon shows in GNOME's dock on a fresh install: GNOME couldn't draw the SVG (a blank icon: "Could not load a pixbuf from icon theme"), by path or by name. The app's installer and the launcher put a 256x256 PNG (`assets/steam-gaming-settings.png`, a release file next to the SVG) in the user's icon theme and the launchers refer to it by name; the SVG stays as the fallback for releases without the PNG**
|
||||||
|
|
||||||
## 2.12.0 - 2026-10-13
|
## 2.12.0 - 2026-10-13
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
@@ -110,7 +110,14 @@ EOF
|
|||||||
# The icon comes with the release; without it, Steam's own icon.
|
# The icon comes with the release; without it, Steam's own icon.
|
||||||
local icon=steam tmp
|
local icon=steam tmp
|
||||||
tmp="$(mktemp)"
|
tmp="$(mktemp)"
|
||||||
if curl -fsSL --max-time 20 "$WIZARD_RELEASE/steam-gaming-settings.svg" -o "$tmp" && grep -q '<svg' "$tmp"; then
|
local theme="${XDG_DATA_HOME:-$HOME/.local/share}/icons/hicolor"
|
||||||
|
# A PNG, by name, first: GNOME's dock can't always draw an SVG (blank icon, "Could not load a pixbuf from icon theme").
|
||||||
|
# (Releases before 2.13.0 only have the SVG.)
|
||||||
|
if curl -fsSL --max-time 20 "$WIZARD_RELEASE/steam-gaming-settings.png" -o "$tmp" && head -c 8 "$tmp" | grep -q PNG; then
|
||||||
|
install -D -m 644 "$tmp" "$theme/256x256/apps/io.github.theupriser.Steamify.png"
|
||||||
|
icon=io.github.theupriser.Steamify
|
||||||
|
gtk-update-icon-cache -q -f -t "$theme" 2>/dev/null || true
|
||||||
|
elif curl -fsSL --max-time 20 "$WIZARD_RELEASE/steam-gaming-settings.svg" -o "$tmp" && grep -q '<svg' "$tmp"; then
|
||||||
install -D -m 644 "$tmp" "$WIZARD_ICON"
|
install -D -m 644 "$tmp" "$WIZARD_ICON"
|
||||||
# The full path: GNOME Shell's dock doesn't find a name in the user's icon folder (blank icon), and every desktop takes a path.
|
# The full path: GNOME Shell's dock doesn't find a name in the user's icon folder (blank icon), and every desktop takes a path.
|
||||||
icon="$WIZARD_ICON"
|
icon="$WIZARD_ICON"
|
||||||
|
|||||||
+12
-1
@@ -58,6 +58,17 @@ fi
|
|||||||
# release: left alone.
|
# release: left alone.
|
||||||
mkdir -p "$APPS"
|
mkdir -p "$APPS"
|
||||||
rm -f "$APPS/steamify-ui.desktop" # its name until 2.12.0
|
rm -f "$APPS/steamify-ui.desktop" # its name until 2.12.0
|
||||||
|
# The icon by name, from the user's icon theme, as a PNG: GNOME's dock can't always draw an SVG (blank icon: "Could not load a
|
||||||
|
# pixbuf from icon theme"), and a file path to one fails the same way.
|
||||||
|
ICON_NAME=io.github.theupriser.Steamify
|
||||||
|
ICON_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/icons/hicolor"
|
||||||
|
if [[ -f "$DEST/assets/steam-gaming-settings.png" ]]; then
|
||||||
|
install -D -m 644 "$DEST/assets/steam-gaming-settings.png" "$ICON_DIR/256x256/apps/$ICON_NAME.png"
|
||||||
|
gtk-update-icon-cache -q -f -t "$ICON_DIR" 2>/dev/null || true
|
||||||
|
ICON="$ICON_NAME"
|
||||||
|
else
|
||||||
|
ICON="$DEST/assets/steam-gaming-settings.svg"
|
||||||
|
fi
|
||||||
grep -q '^X-Steamify-Shortcut=true' "$APPS/io.github.theupriser.Steamify.desktop" 2>/dev/null ||
|
grep -q '^X-Steamify-Shortcut=true' "$APPS/io.github.theupriser.Steamify.desktop" 2>/dev/null ||
|
||||||
cat > "$APPS/io.github.theupriser.Steamify.desktop" << EOF
|
cat > "$APPS/io.github.theupriser.Steamify.desktop" << EOF
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
@@ -65,7 +76,7 @@ Type=Application
|
|||||||
Name=Steamify CachyOS
|
Name=Steamify CachyOS
|
||||||
Comment=Turn this PC into a SteamOS-style console
|
Comment=Turn this PC into a SteamOS-style console
|
||||||
Exec=$DEST/ui/steamify-ui
|
Exec=$DEST/ui/steamify-ui
|
||||||
Icon=$DEST/assets/steam-gaming-settings.svg
|
Icon=$ICON
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Categories=Game;Settings;
|
Categories=Game;Settings;
|
||||||
StartupWMClass=io.github.theupriser.Steamify
|
StartupWMClass=io.github.theupriser.Steamify
|
||||||
|
|||||||
Reference in new issue
Block a user