After #731 the .deb/.rpm/Nix packages follow the session display server,
but AppImage still pins GDK_BACKEND=x11 via its AppRun hook. Document the
asymmetry in the install guidance and complete the #731 changelog entry so
users know which package gives a native-Wayland launch.
TELEMETRY.md captures the standing no-telemetry stance as a standalone
document next to PRIVACY.md. The README Privacy section now links
both: TELEMETRY.md for the policy itself, PRIVACY.md for how each
opt-in integration handles data.
Document where to ask questions, local commands that mirror CI, PR
expectations, caution around disruptive UI, stability of the Tauri
Rust-frontend contract, and impact of on-disk settings changes.
Link the guide from the README Development section.
Restructures the README with a calmer tone and clearer information
architecture:
- new tagline + intro paragraph (less marketing-speak, more honest)
- badge row split into release/community/distribution groups,
with a new Ko-fi support badge
- merged "Server Compatibility" + "Why Psysonic?" into a single
"What is Psysonic?" section
- "Core Features" → "Highlights", restructured into Playback & Queue,
Audio Tools, Library Management, Lyrics & Discovery, a new
Sharing & Social Listening block (Magic Strings + Orbit), and
Personalization & Accessibility
- Orbit is now treated as a current feature (no longer "Upcoming"),
with a banner image and a paragraph about real-world use
- Privacy and Community sections expanded with proper links to
Discord, Telegram, Issues and Ko-fi
- License + Forks-and-Attribution rewritten in a friendlier tone
while still preserving the same intent
Assets:
- public/orbit.png — new Orbit banner
- public/screenshot1.png — refreshed app screenshot
* docs: add NOTICE and TRADEMARK files
Adds a NOTICE.md with the GPLv3 §7(b) attribution-preservation terms
that derivative works must carry forward, and a TRADEMARK.md that
covers the Psysonic name, logo, brand identity, and the names of
original Psysonic features (in particular Orbit) — none of which are
licensed under the GPLv3.
Forks remain free under GPLv3 to reuse the code, but must rename
Psysonic-branded assets and feature names, and must preserve the
attribution that original Psysonic features were designed and
implemented in this project.
* docs(readme): add Forks and Attribution section
Points readers at the GPLv3 freedoms while clarifying the expectations
for forks: keep the project name and feature names as documented in
TRADEMARK.md, preserve attribution as required by NOTICE.md, and do
not present original Psysonic work (such as Orbit) as independent
creations of a fork.
- Add Cachix badge to the top row linking to psysonic.cachix.org
- New NixOS/flakes feature bullet and a dedicated install block with
nix run quickstart, system-config hint, Cachix substituter setup, and
credit + PR link for @cucadmuh
- macOS install block: drop the xattr Gatekeeper workaround (obsolete
since v1.40.0 signed + notarized builds); replace with a note on the
in-app auto-updater
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Document NixOS/Home Manager installation from the upstream flake,
including Cachix substituter/key configuration, apply commands, and pinning.
Also add a README Linux note linking to the new NixOS guide.
Condensed 27 feature bullets to 14 key highlights, replaced exact
theme count with "wide selection", added CLI Control entry, and
removed the completed roadmap section (redundant with features list).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add "Reset to defaults" button to column picker in AlbumTrackList, PlaylistDetail, Favorites (all 8 locales)
- Fix device sync cross-OS status detection: store filenameTemplate in manifest, use it for path computation on import
- Redesign filename template UI: preset buttons (Standard/Multi-Disc/Alt. Folder), clickable token chips ({artist}, {album}, etc.), clear button
- Fix suggestions section in PlaylistDetail missing album column rendering
- Add PRIVACY.md documenting all third-party integrations (Last.fm, LRCLIB, Apple Music, Discord); link from README
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
symphonia-adapter-libopus bundles libopus and compiles it via cmake.
Without cmake installed, cargo build fails with a C compiler error.
Added install instructions for Linux, macOS, and Windows.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Replace single screenshot with 4 new screenshots in README
- Remove old icon.png, logo.png, screenshot.png
- Add missing allow-minimize + allow-toggle-maximize capabilities
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Themes:
- Add Poison (phosphor green on charcoal), Nucleo (warm brass light), Classic Winamp (LCD glow, Winamp yellow/orange) themes
- Overhaul Psychowave — refined deep violet, no longer WIP
- Reorganise ThemePicker into groups: Catppuccin, Nord, Retro, Tokyo Night, Psysonic Themes
- Add --volume-accent CSS var for per-theme volume slider colour override
Queue:
- Full toolbar redesign with centred round buttons (Shuffle/Save/Load/Clear/Gapless/Crossfade)
- Crossfade popover with 1–10 s range slider, right-aligned to avoid viewport overflow
- Queue header: title + count + duration inline in accent colour, close button removed
- Tech info (codec/bitrate) as frosted-glass overlay badge on cover art
UI:
- CoverLightbox shared component for album cover (AlbumHeader) and artist avatar (ArtistDetail)
- NowPlayingDropdown: separate spinning/loading state — button always clickable, icon spins 600 ms min
- Settings: "Experimental" badge on Crossfade and Gapless toggles
- Help page: 2-column grid layout, new Crossfade & Gapless Q&A entry, updated theme/language entries
i18n:
- Full French (fr) and Dutch (nl) translations across all namespaces
- Language selector sorted alphabetically (nl, en, fr, de)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
### Audio
- Replay Gain support (track + album mode, configurable pre-gain, hard limiter)
- Crossfade between tracks (configurable duration 1–10 s)
- Gapless preloading ⚠️ experimental/alpha — enable in Settings → Playback
- Atomic sink swap: old track plays until new one is decoded, then stops cleanly
### UI / UX
- Settings redesigned with tab navigation (General, Playback, About)
- Changelog viewer in Settings → About with collapsible version entries
- Download Folder Modal: choose folder + "remember" checkbox per-download
- EQ popup now accessible directly from the Player Bar
- "Also Featured On" section on Artist pages for non-album appearances
### Fixes
- Bundle identifier changed from dev.psysonic.app → dev.psysonic.player (fixes macOS warning)
- Version sync: all four version files (package.json, Cargo.toml, tauri.conf.json, PKGBUILD) now at 1.6.0
### Known Issues
- FLAC seeking via waveform seekbar does not work (MP3/OGG unaffected) — under investigation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
### 10-Band Graphic Equalizer
- Full EQ in Rust audio engine via EqSource<S> biquad peak filters
- 10 built-in presets + custom preset save/delete
- EqSource::try_seek() implemented — also fixes waveform seek which broke
silently when EQ was introduced (rodio returned SeekError::NotSupported)
- EQ state persisted in localStorage, synced to Rust on startup
### Connection Indicator
- LED in header (green/red/pulsing) with server name and LAN/WAN label
- Offline overlay with retry button when server is unreachable
- useConnectionStatus hook
### New App Icon
- New logo (logo-psysonic.png) applied across Login, Sidebar, Settings,
README and all Tauri platform icons (Windows, macOS, Linux, Android, iOS)
### Now Playing Page
- New /now-playing route added
### Fixes
- WaveformSeek: mousemove/mouseup on window to fix drag outside canvas
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>