diff --git a/.circleci/config.yml b/.circleci/config.yml index 27466672..5a6ef76e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -116,10 +116,10 @@ jobs: name: Move Build Files command: | mkdir ~/Cider/dist/artifacts/ - mv ~/Cider/dist/*.exe ~/Cider/dist/artifacts mv ~/Cider/dist/*.deb ~/Cider/dist/artifacts mv ~/Cider/dist/*.AppImage ~/Cider/dist/artifacts mv ~/Cider/dist/*.snap ~/Cider/dist/artifacts + mv ~/Cider/dist/*.exe ~/Cider/dist/artifacts mv ~/Cider/dist/*.yml ~/Cider/dist/artifacts mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts - store_artifacts: @@ -153,6 +153,7 @@ workflows: only: - main - stable + - steam-deck - build-windows: requires: - prepare-build @@ -161,6 +162,7 @@ workflows: only: - main - stable + - steam-deck - build-linux: requires: - prepare-build @@ -169,6 +171,7 @@ workflows: only: - main - stable + - steam-deck - build-winget: requires: - prepare-build @@ -177,6 +180,7 @@ workflows: only: - main - stable + - steam-deck - release: requires: - build-windows @@ -187,3 +191,4 @@ workflows: only: - main - stable + - steam-deck diff --git a/.github/workflows/cider-chores.yml b/.github/workflows/cider-chores.yml index 48136a22..dfb3eb59 100644 --- a/.github/workflows/cider-chores.yml +++ b/.github/workflows/cider-chores.yml @@ -69,7 +69,7 @@ jobs: commit_message: "chore: Prettified Code\n [ci skip]" commit_user_name: "cider-chore[bot]" commit_user_email: "cider-chore[bot]@users.noreply.github.com" - + update-i18n-source: runs-on: ubuntu-latest @@ -93,8 +93,7 @@ jobs: commit_message: "chore: Updated i18n Source\n [ci skip]" commit_user_name: "cider-chore[bot]" commit_user_email: "cider-chore[bot]@users.noreply.github.com" - - + synchronize-with-crowdin: runs-on: ubuntu-latest if: ${{ false }} # disable for now diff --git a/package.json b/package.json index 208b2d5c..8517a46d 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "winget": "npm run build && electron-builder --win -c winget.json", "msft": "npm run build && electron-builder -c msft-package.json", "mstest": "npm run build && electron-builder -c msft-test.json", + "steamdeck": "npm run build && electron-builder --linux -c steam-deck.json", "postinstall": "electron-builder install-app-deps", "format:check": "npx prettier --check \"src/**/*.{js,json,ts,less}\"", "format:write": "npx prettier --write \"src/**/*.{js,json,ts,less}\"" diff --git a/src/main/base/app.ts b/src/main/base/app.ts index f59c6788..7e2e0678 100644 --- a/src/main/base/app.ts +++ b/src/main/base/app.ts @@ -2,6 +2,7 @@ import { app, Menu, nativeImage, Tray, ipcMain, clipboard, shell } from "electro import { readFileSync } from "fs"; import * as path from "path"; import * as log from "electron-log"; +import * as os from "os"; import { utils } from "./utils"; /** @@ -92,6 +93,11 @@ export class AppEvents { if (process.platform === "linux") { app.commandLine.appendSwitch("disable-features", "MediaSessionService"); + + if (os.version().indexOf("SteamOS")) { + app.commandLine.appendSwitch("enable-features", "UseOzonePlatform"); + app.commandLine.appendSwitch("ozone-platform", "x11"); + } } /*********************************************************************************************************************** diff --git a/src/main/plugins/lastfm.ts b/src/main/plugins/lastfm.ts index 2c3f2613..06fd5c42 100644 --- a/src/main/plugins/lastfm.ts +++ b/src/main/plugins/lastfm.ts @@ -209,7 +209,7 @@ export default class lastfm { }); return; } - + if (!this._authenticated || !attributes || this._utils.getStoreValue("connectivity.lastfm.filter_types")[attributes.playParams.kind] || this._utils.getStoreValue("connectivity.lastfm.filter_types")[attributes.kind] || (this._utils.getStoreValue("connectivity.lastfm.filter_loop") && this._nowPlayingCache.track === attributes.lfmTrack.name)) return; console.log(this._utils.getStoreValue("connectivity.lastfm.filter_types")); diff --git a/steam-deck.json b/steam-deck.json new file mode 100644 index 00000000..8ded62b3 --- /dev/null +++ b/steam-deck.json @@ -0,0 +1,45 @@ +{ + "electronVersion": "18.3.12", + "electronDownload": { + "version": "18.3.12+wvcus", + "mirror": "https://github.com/castlabs/electron-releases/releases/download/v" + }, + "appId": "cider", + "protocols": [ + { + "name": "Cider", + "schemes": ["ame", "cider", "itms", "itmss", "musics", "music"] + } + ], + "extends": null, + "files": ["**/*", "./src/**/*", "./resources/icons/icon.*"], + "linux": { + "target": ["AppImage", "flatpak", "pacman"], + "synopsis": "A new look into listening and enjoying music in style and performance. ", + "category": "AudioVideo", + "icon": "cider", + "executableName": "cider" + }, + "appx": { + "applicationId": "CiderAlpha", + "publisher": "CN=CiderCollective, OID.2.25.311729368913984317654407730594956997722=1", + "displayName": "Cider", + "identityName": "CiderCollective.CiderAlpha", + "backgroundColor": "transparent", + "setBuildNumber": true + }, + "win": { + "target": ["appx"], + "icon": "resources/icons/icon.ico" + }, + "directories": { + "buildResources": ".", + "output": "dist" + }, + "mac": { + "icon": "./resources/icons/icon.icns", + "category": "public.app-category.music", + "entitlements": "resources/entitlements.mac.plist", + "darkModeSupport": true + } +}