From 686b885c7a7559d7293cbd0c83032e08c3c8790a Mon Sep 17 00:00:00 2001 From: Crabbie Mike Date: Thu, 16 Jul 2026 16:39:29 -0400 Subject: [PATCH 1/2] feat: Add Linux support to GitHub Actions and release config --- .github/workflows/release.yml | 11 ++++++++++- README.md | 4 ++-- src-tauri/tauri.conf.json | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1a2198b..2d4e631 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -16,7 +16,11 @@ on: jobs: build: - runs-on: windows-latest + strategy: + fail-fast: false + matrix: + platform: [windows-latest, ubuntu-22.04] + runs-on: ${{ matrix.platform }} permissions: contents: write steps: @@ -30,6 +34,11 @@ jobs: - uses: swatinem/rust-cache@v2 with: workspaces: src-tauri + - name: Install Linux dependencies + if: matrix.platform == 'ubuntu-22.04' + run: | + sudo apt-get update + sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf - run: pnpm install --frozen-lockfile - uses: tauri-apps/tauri-action@v0 env: diff --git a/README.md b/README.md index b5db7bb..2a6d035 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@

YTubic

- A fast, responsive YouTube Music desktop client for Windows. + A fast, responsive YouTube Music desktop client for Windows and Linux.

@@ -43,7 +43,7 @@ Built as a reaction to the sluggish webview-wrapper experience — YTubic talks Download the latest installer from the [Releases](../../releases) page and run it. -- **Windows 10/11 only** for now. +- **Windows 10/11 and Linux** support. - On first launch the app downloads its own copy of yt-dlp (~12 MB) into its data folder and keeps it updated automatically. - Signing in is optional: browse and playback work anonymously; sign in to get diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 92c44b4..41f31c8 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -31,7 +31,7 @@ }, "bundle": { "active": true, - "targets": ["nsis"], + "targets": "all", "createUpdaterArtifacts": true, "icon": [ "icons/32x32.png", From 16a473951dfa9721f8e8077bec8c425674f38f7f Mon Sep 17 00:00:00 2001 From: Crabbie Mike Date: Thu, 16 Jul 2026 16:59:36 -0400 Subject: [PATCH 2/2] fix: Resolve Linux black screen and resizing bugs --- src-tauri/src/lib.rs | 2 +- src-tauri/src/main.rs | 5 +++++ src-tauri/tauri.conf.json | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index f0b2a16..d2b5ff8 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -1299,7 +1299,7 @@ async fn open_player_window( WebviewUrl::App("index.html?floating-player=1".into()), ) .title("YTubic — player") - .decorations(false) + .decorations(true) .inner_size(360.0, 720.0) .min_inner_size(320.0, 560.0) .resizable(true) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index a61d231..870343c 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -2,5 +2,10 @@ #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] fn main() { + #[cfg(target_os = "linux")] + { + std::env::set_var("WEBKIT_DISABLE_DMABUF_RENDERER", "1"); + std::env::set_var("WEBKIT_DISABLE_COMPOSITING_MODE", "1"); + } ytubic_lib::run() } diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 41f31c8..a48ed75 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -17,7 +17,7 @@ "height": 800, "minWidth": 900, "minHeight": 600, - "decorations": false, + "decorations": true, "resizable": true, "center": true, "backgroundColor": "#0a0a0a",