Commit graph

4897 commits

Author SHA1 Message Date
Philip Peterson
2529026462 Grant contents:write to release job for GoReleaser publishing
Some checks failed
CI / ci (push) Has been cancelled
2026-08-28 23:51:48 -08:00
Philip Peterson
ff38d4fb1e Merge remote-tracking branch 'q/master'
Some checks failed
CI / ci (push) Has been cancelled
Desktop Release / Build desktop (x86_64-apple-darwin) (push) Has been cancelled
Desktop Release / Build desktop (aarch64-apple-darwin) (push) Has been cancelled
Desktop Release / Build desktop (x86_64-pc-windows-msvc) (push) Has been cancelled
Desktop Release / Publish Gitea release (push) Has been cancelled
2026-08-25 17:23:32 -08:00
Philip Peterson
ca2c052522 Use Docker Hub base images instead of AWS ECR mirror
public.ecr.aws returns 429 Too Many Requests; the docker/library/*
images are just Docker Hub official images mirrored on ECR.
2026-08-25 17:22:34 -08:00
Philip Peterson
f30bc188b9 Fix 2026-08-25 15:16:10 -08:00
Philip Peterson
dcba580ba7 Fix 2026-08-25 15:08:32 -08:00
Philip Peterson
47800d51ef Fetch golangci-lint release tarball directly (bypass broken install-script checksum)
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 15:07:21 -08:00
Philip Peterson
fe4b32b902 Use latest golangci-lint in Dagger lint (v2.12.0 checksum is broken)
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:43:59 -08:00
Philip Peterson
9271578646 Fix goarm target format for goreleaser v2
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:42:19 -08:00
Philip Peterson
937b5f52a9 Add experimental Windows container build to Dagger module
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:24:26 -08:00
Philip Peterson
67a9247b4e Add lint steps to Dagger module
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:20:12 -08:00
Philip Peterson
1104f6467a Fix Dagger CLI install path in CI workflows
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:17:44 -08:00
Philip Peterson
afa9529afd Add Dagger module, thin CI workflows, and Gitea Actions
Some checks are pending
CI / ci (push) Waiting to run
2026-08-25 14:15:35 -08:00
Philip Peterson
cee31c1e2c try fix build
Some checks failed
Pipeline: Test, Lint, Build / Get version info (push) Has been cancelled
Pipeline: Test, Lint, Build / Lint Go code (push) Has been cancelled
Pipeline: Test, Lint, Build / Test Go code (push) Has been cancelled
Pipeline: Test, Lint, Build / Test Go code (Windows) (push) Has been cancelled
Pipeline: Test, Lint, Build / Test JS code (push) Has been cancelled
Pipeline: Test, Lint, Build / Lint i18n files (push) Has been cancelled
Pipeline: Test, Lint, Build / Check Docker configuration (push) Has been cancelled
Pipeline: Test, Lint, Build / Build (push) Has been cancelled
Pipeline: Test, Lint, Build / Push to GHCR (push) Has been cancelled
Pipeline: Test, Lint, Build / Push to Docker Hub (push) Has been cancelled
Pipeline: Test, Lint, Build / Cleanup digest artifacts (push) Has been cancelled
Pipeline: Test, Lint, Build / Build Windows installers (push) Has been cancelled
Pipeline: Test, Lint, Build / Package/Release (push) Has been cancelled
Pipeline: Test, Lint, Build / Upload Linux PKG (push) Has been cancelled
2026-08-25 13:54:27 -08:00
Philip Peterson
5696727a50 try fix cmd-a 2026-08-25 05:32:15 -08:00
Philip Peterson
dc32a2a80f gofmt gen_icon.go 2026-08-25 05:11:19 -08:00
Philip Peterson
51b708f93f try fix cmd-a 2026-08-25 05:10:24 -08:00
Philip Peterson
d1eebbf616 Cleanup 2026-08-25 05:03:07 -08:00
Philip Peterson
01e40c1d54 Fix cut/copy/paste shortcuts via NSEvent monitor 2026-08-25 04:58:17 -08:00
Philip Peterson
5aff975993 Silence golanglint error 2026-08-25 04:49:54 -08:00
Philip Peterson
3c7c02f3e5 Update readme 2026-08-25 04:39:26 -08:00
Philip Peterson
8372aa28f6 Fix devtools console copy 2026-08-25 04:03:31 -08:00
Philip Peterson
9523e65826 fix clipboard 2026-08-25 03:55:38 -08:00
Philip Peterson
f7e8618226 Fix capability 2026-08-25 03:45:42 -08:00
Philip Peterson
f30b3ba498 try fix clipboard 2026-08-25 03:44:17 -08:00
Philip Peterson
aea6377649 Fix external urls 2026-08-25 03:37:40 -08:00
Philip Peterson
b3238d57f8 build pipeline 2026-08-25 03:33:27 -08:00
Philip Peterson
36c26dbbda opt out of telemetry 2026-08-25 03:33:07 -08:00
Philip Peterson
29a8c7e31d Auto-provision admin user 2026-08-25 03:15:45 -08:00
Philip Peterson
fe41da40f7 fix nav issues 2026-08-25 03:11:13 -08:00
Philip Peterson
e238d9645d quintodrome url mask 2026-08-25 03:08:15 -08:00
Philip Peterson
9506629586 Allow swipe to go back 2026-08-25 03:00:32 -08:00
Philip Peterson
fe8010cb80 make nav bar bigger 2026-08-25 02:57:12 -08:00
Philip Peterson
4a91f98ba3 Add navigation bar 2026-08-25 02:50:10 -08:00
Philip Peterson
6fc857720f Enable chrome? 2026-08-24 21:24:20 -08:00
Philip Peterson
8ab48fbd03 fix build script 2026-08-24 21:23:59 -08:00
Philip Peterson
8229ead620 enable dependabot 2026-08-24 21:23:51 -08:00
Philip Peterson
86ed1bbb1e desktop app 2026-08-24 20:49:04 -08:00
Deluan Quintão
3b958dd6a7
refactor(stream): remove dead type branches from getIntClaim (#5594)
The jwx library always deserializes numeric claims from a parsed token as
float64, so the int and int64 branches in getIntClaim could never succeed
and were dead code. Keep only the float64 path, which is the one actually
exercised by the token round-trip, and update the comment to document the
library behavior.
2026-06-10 23:15:58 -04:00
Deluan Quintão
08fd222791
fix(smartplaylist): support isMissing/isPresent operators on ReplayGain fields (#5585)
* fix(smartplaylist): support isMissing/isPresent operators on ReplayGain fields

ReplayGain values are stored in dedicated nullable columns (rg_album_gain,
rg_album_peak, rg_track_gain, rg_track_peak) rather than in the media_file.tags
JSON blob. The isMissing/isPresent operators previously only supported tag and
role fields, causing two failure modes:

1. Using the documented alias names (replaygain_album_gain etc.) from PR #5256:
   these got registered as JSON tags from mappings.yaml, so isMissing queried
   json_tree(media_file.tags, '$.replaygain_album_gain') which is always empty
   -> the playlist matched ALL songs.

2. Using the canonical field names (rgalbumgain etc.): not a tag/role, so SQL
   generation returned an error. Because refreshSmartPlaylist deletes old tracks
   before regenerating, the abort left the playlist empty.

Fix: add Nullable bool to FieldInfo and mark the four ReplayGain fields. Add
static alias entries (replaygain_album_gain -> rgalbumgain etc.) with
Numeric+Nullable set; because AddTagNames skips names already in the field map,
these static entries take precedence over the mappings.yaml tag registration.
missingExpr now emits IS NULL / IS NOT NULL for nullable column fields instead
of the json_tree lookup.

Fixes #5584

* chore(smartplaylist): address code review feedback

- Simplify the isMissing/isPresent unsupported-field error message,
  removing the internal "nullable fields" jargon
- Standardize comments on mappings.yaml (the actual filename)
- Clarify the alias precedence comment in the LookupField test
2026-06-10 21:12:31 -04:00
Jan Mrzygłód
37e5a1d248
fix(ui): Fix Nautiline theme font and width on mobile devices (#5590)
Signed-off-by: devBoi76 <mrzyglodjan@protonmail.com>
2026-06-10 16:47:54 -04:00
Deluan
bd3192be0b fix(server): make DB PRAGMA optimize error non-fatal
Signed-off-by: Deluan <deluan@navidrome.org>
2026-06-09 19:29:58 -04:00
Deluan
b6fba33b14 chore(docs): add Danian hosting option to installation instructions
Signed-off-by: Deluan <deluan@navidrome.org>
2026-06-09 19:29:58 -04:00
Deluan Quintão
9cd2cd0a8b
fix(ui): load ND_DEFAULTLANGUAGE on app startup (#4000)
* fix: load ND_DEFAULTLANGUAGE on app startup

Added  in  to apply  on initial mount, ensuring the locale is set even when the login page is skipped by reverse-proxy authentication. Removed the redundant language-init effect from . Fixes #3605.

* style(ui): format App.jsx with Prettier

Ran Prettier on ui/src/App.jsx to satisfy code style checks after adding default-language useEffect.

* fix(ui): move default language initialization to Admin component

Signed-off-by: Deluan <deluan@navidrome.org>

* fix(ui): streamline locale setting in App component

Signed-off-by: Deluan <deluan@navidrome.org>

---------

Signed-off-by: Deluan <deluan@navidrome.org>
2026-06-09 19:27:15 -04:00
Deluan Quintão
1b46b97712
fix(ui): update Indonesian translations from POEditor (#5575)
Co-authored-by: navidrome-bot <navidrome-bot@navidrome.org>
2026-06-08 08:22:59 -04:00
Deluan Quintão
5c387630ff
fix(ui): update Estonian translations from POEditor (#5573)
Co-authored-by: navidrome-bot <navidrome-bot@navidrome.org>
2026-06-07 12:29:17 -04:00
Deluan
9a2eb483e8 fix(transcode): log warning for invalid or stale transcode tokens
Signed-off-by: Deluan <deluan@navidrome.org>
2026-06-06 11:00:27 -04:00
Metalhearf
cc18bf7329
feat(ui): add Tokyo Night theme (#5497)
* feat(themes): add Tokyo Night theme

Signed-off-by: Metalhearf <6446231+Metalhearf@users.noreply.github.com>

* fix(themes): address review feedback on Tokyo Night

Signed-off-by: Metalhearf <6446231+Metalhearf@users.noreply.github.com>

---------

Signed-off-by: Metalhearf <6446231+Metalhearf@users.noreply.github.com>
Co-authored-by: Deluan <deluan@navidrome.org>
2026-06-05 21:04:48 -04:00
Love
e15896bf32 feat(ui): Add Catppuccin Latte (#5250)
Add Catppuccin Latte (the light version) theme based on the existing Catppuccin Macchiato theme.
The palette and player styling are adapted for light mode while staying as close as practical
to the existing Macchiato theme behavior. I've opted to use gray for the
color for controls.

The dark version appears to mix a few control/accent colors,
so for Latte I standardized those choices. This might be worth looking
into in a separate PR. It uses gray and blue.

Signed-off-by: Love Billenius <lovebillenius@disroot.org>
Co-authored-by: Deluan Quintão <deluan@navidrome.org>
Signed-off-by: Deluan <deluan@navidrome.org>
2026-06-05 20:42:53 -04:00
craiglush
29c123854c
feat(ui): Add Moonbase themes (Alpha light + Bravo dark) (#5243)
* Add Moonbase theme

A warm dark theme with gold (#d4a039) accents on deep charcoal
backgrounds (#0a0a09/#141413). Features muted cream text (#e5ddd3),
copper error states (#c45c3c), and subtle earthy secondary tones.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Fix review comments on Moonbase theme

- Fix CSS selector: use :not(.player-delete) instead of :not([class=".player-delete"])
- Fix MuiFormHelperText override structure: target error key directly
- Remove empty icon: {} and avatar: {} from NDLogin overrides
- Use comma-separated rgba syntax and hex for linear-gradient

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Add Moonbase Alpha (light) and rename dark to Moonbase Bravo

Split the Moonbase theme into a complementary pair:
- Moonbase Alpha: warm cream/stone light theme with deep gold accents
- Moonbase Bravo: the original deep charcoal dark theme

Both share the same gold (#d4a039) brand accent, copper error states,
and earthy neutral palette. Alpha uses darkened gold (#9a7420) for
better contrast on light backgrounds.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Deluan Quintão <deluan@navidrome.org>
2026-06-05 20:35:56 -04:00
Buck DeFore
318ad164df
fix(ui): suppress capitalization and correction for login on mobile keyboards (#3783)
* suppress capitalization and correction for login on mobile keyboards

* prettier pass

---------

Co-authored-by: Deluan Quintão <deluan@navidrome.org>
2026-06-05 18:35:00 -04:00