Compare commits

..

1 Commits

Author SHA1 Message Date
navidrome-bot
767c280c9f fix(ui): update Catalan, Finnish, Dutch, Slovenian, Thai translations from POEditor 2026-01-18 10:07:46 +00:00
10 changed files with 996 additions and 508 deletions

View File

@@ -23,5 +23,7 @@ RUN DOWNLOAD_ARCH="linux-${TARGETARCH}" \
&& rmdir /usr/include/taglib \
&& rm /tmp/cross-taglib.tar.gz /usr/provenance.json
ENV CGO_CFLAGS_ALLOW="--define-prefix"
# [Optional] Uncomment this line to install global node packages.
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1

View File

@@ -15,6 +15,7 @@ concurrency:
env:
CROSS_TAGLIB_VERSION: "2.1.1-1"
CGO_CFLAGS_ALLOW: "--define-prefix"
IS_RELEASE: ${{ startsWith(github.ref, 'refs/tags/') && 'true' || 'false' }}
jobs:

View File

@@ -94,6 +94,7 @@ RUN --mount=type=bind,source=. \
# Setup CGO cross-compilation environment
xx-go --wrap
export CGO_ENABLED=1
export CGO_CFLAGS_ALLOW="--define-prefix"
export PKG_CONFIG_PATH=/taglib/lib/pkgconfig
cat $(go env GOENV)

View File

@@ -2,6 +2,7 @@ GO_VERSION=$(shell grep "^go " go.mod | cut -f 2 -d ' ')
NODE_VERSION=$(shell cat .nvmrc)
# Set global environment variables, required for most targets
export CGO_CFLAGS_ALLOW=--define-prefix
export ND_ENABLEINSIGHTSCOLLECTOR=false
ifneq ("$(wildcard .git/HEAD)","")

View File

@@ -1,7 +1,8 @@
package taglib
/*
#cgo pkg-config: taglib
#cgo !windows pkg-config: --define-prefix taglib
#cgo windows pkg-config: taglib
#cgo illumos LDFLAGS: -lstdc++ -lsendfile
#cgo linux darwin CXXFLAGS: -std=c++11
#cgo darwin LDFLAGS: -L/opt/homebrew/opt/taglib/lib

View File

File diff suppressed because it is too large Load Diff

View File

@@ -328,6 +328,78 @@
"scanInProgress": "Skannaus käynnissä...",
"noLibrariesAssigned": "Tälle käyttäjälle ei ole määritetty kirjastoja"
}
},
"plugin": {
"name": "Liitännäinen |||| Liitännäiset",
"fields": {
"id": "ID",
"name": "Nimi",
"description": "Kuvaus",
"version": "Versio",
"author": "Tekijä",
"website": "Verkkosivusto",
"permissions": "Oikeudet",
"enabled": "Käytössä",
"status": "Tila",
"path": "Polku",
"lastError": "Virhe",
"hasError": "Virhe",
"updatedAt": "Päivitetty",
"createdAt": "Asennettu",
"configKey": "Avain",
"configValue": "Arvo",
"allUsers": "Salli kaikki käyttäjät",
"selectedUsers": "Valitut käyttäjät",
"allLibraries": "Salli kaikki kirjastot",
"selectedLibraries": "Valitut kirjastot"
},
"sections": {
"status": "Tila",
"info": "Lisäosan tiedot",
"configuration": "Määritykset",
"manifest": "Luettelo",
"usersPermission": "Käyttäjäoikeudet",
"libraryPermission": "Kirjaston oikeudet"
},
"status": {
"enabled": "Käytössä",
"disabled": "Ei käytössä"
},
"actions": {
"enable": "Ota käyttöön",
"disable": "Poista käytöstä",
"disabledDueToError": "Korjaa virhe ennen käyttöönottoa",
"disabledUsersRequired": "Valitse käyttäjät ennen käyttöönottoa",
"disabledLibrariesRequired": "Valitse kirjastot ennen käyttöönottoa",
"addConfig": "Lisää määritykset",
"rescan": "Skannaa uudelleen"
},
"notifications": {
"enabled": "Lisäosa käytössä",
"disabled": "Lisäosa ei käytössä",
"updated": "Lisäosa päivitetty",
"error": "Virhe lisäosaa päivitettäessä"
},
"validation": {
"invalidJson": "Määrityksen on oltava kelvollinen JSON"
},
"messages": {
"configHelp": "Määritä lisäosa avain-arvo-parien avulla. Jätä tyhjäksi, jos lisäosa ei vaadi määrityksiä.",
"clickPermissions": "Napsauta käyttöoikeutta saadaksesi lisätietoja",
"noConfig": "Ei määritettyjä asetuksia",
"allUsersHelp": "Kun tämä on käytössä, laajennuksella on pääsy kaikkiin käyttäjiin, myös tulevaisuudessa luotaviin.",
"noUsers": "Ei valittuja käyttäjiä",
"permissionReason": "Syy",
"usersRequired": "Tämä laajennus vaatii pääsyn käyttäjätietoihin. Valitse käyttäjät, joihin laajennus voi päästä, tai ota käyttöön 'Salli kaikki käyttäjät'.",
"allLibrariesHelp": "Kun tämä on käytössä, laajennuksella on pääsy kaikkiin kirjastoihin, myös tulevaisuudessa luotaviin.",
"noLibraries": "Ei valittuja kirjastoja",
"librariesRequired": "Tämä laajennus vaatii pääsyn kirjastotietoihin. Valitse, mihin kirjastoihin laajennus voi käyttää, tai ota käyttöön 'Salli kaikki kirjastot'.",
"requiredHosts": "Vaaditut palvelimet"
},
"placeholders": {
"configKey": "avain",
"configValue": "arvo"
}
}
},
"ra": {
@@ -586,16 +658,16 @@
},
"tabs": {
"about": "Tietoja",
"config": "Kokoonpano"
"config": "Määritykset"
},
"config": {
"configName": "Konfiguraation nimi",
"environmentVariable": "Ympäristömuuttuja",
"currentValue": "Nykyinen arvo",
"configurationFile": "Konfiguraatiotiedosto",
"exportToml": "Vie konfiguraatio (TOML)",
"exportSuccess": "Konfiguraatio viety leikepöydälle TOML-muodossa",
"exportFailed": "Konfiguraation kopiointi epäonnistui",
"configurationFile": "Määritystiedosto",
"exportToml": "Vie määritys (TOML)",
"exportSuccess": "Määritykset viety leikepöydälle TOML-muodossa",
"exportFailed": "Määritysten kopiointi epäonnistui",
"devFlagsHeader": "Kehitysliput (voivat muuttua/poistua)",
"devFlagsComment": "Nämä ovat kokeellisia asetuksia ja ne voidaan poistaa tulevissa versioissa"
}

View File

@@ -328,6 +328,78 @@
"scanInProgress": "Scan is bezig...",
"noLibrariesAssigned": "Geen bibliotheken aan deze gebruiker toegewezen"
}
},
"plugin": {
"name": "Plugin |||| Plugins",
"fields": {
"id": "ID",
"name": "Naam",
"description": "Omschrijving",
"version": "Versie",
"author": "Auteur",
"website": "Website",
"permissions": "Permissies",
"enabled": "Aangezet",
"status": "Status",
"path": "Pad",
"lastError": "Fout",
"hasError": "Fout",
"updatedAt": "Geupdate",
"createdAt": "Geinstalleerd",
"configKey": "Sleutel",
"configValue": "Waarde",
"allUsers": "Alle gebruikers toelaten",
"selectedUsers": "Geselecteerde gebruikers",
"allLibraries": "Alle bibliotheken toestaan",
"selectedLibraries": "Geselecteerde bibliotheken"
},
"sections": {
"status": "Status",
"info": "Plugin informatie",
"configuration": "Configuratie",
"manifest": "Manifest",
"usersPermission": "Gebruikers permissie",
"libraryPermission": "Bibliotheekpermissie"
},
"status": {
"enabled": "Aangezet",
"disabled": "Uitgezet"
},
"actions": {
"enable": "Aanzetten",
"disable": "Uitzetten",
"disabledDueToError": "Herstel de fout voor aanzetten",
"disabledUsersRequired": "Selecteer gebruikers voor aanzetten",
"disabledLibrariesRequired": "Selecteer bibliotheek voor aanzetten",
"addConfig": "Configuratie toevoegen",
"rescan": "Opnieuw scannen"
},
"notifications": {
"enabled": "Plugin actief",
"disabled": "Plugin niet actief",
"updated": "Plugin geupdate",
"error": "Fout bij updaten plugin"
},
"validation": {
"invalidJson": "Configuratie moet geldige JSON zijn"
},
"messages": {
"configHelp": "",
"clickPermissions": "Klik op permissie voor details",
"noConfig": "Geen configuratie ingesteld",
"allUsersHelp": "",
"noUsers": "Geen gebruikers geselecteerd",
"permissionReason": "Reden",
"usersRequired": "",
"allLibrariesHelp": "",
"noLibraries": "Geen bibliotheken geselecteerd",
"librariesRequired": "",
"requiredHosts": "Benodigde hosts"
},
"placeholders": {
"configKey": "Sleutel",
"configValue": "Waarde"
}
}
},
"ra": {

View File

@@ -301,14 +301,19 @@
"actions": {
"scan": "Skeniraj knjižnico",
"manageUsers": "Upravljanje dostopa uporabnikov",
"viewDetails": "Ogled podrobnosti"
"viewDetails": "Ogled podrobnosti",
"quickScan": "Hitro skeniranje",
"fullScan": "Popolno skeniranje"
},
"notifications": {
"created": "Knjižnica je uspešno ustvarjena",
"updated": "Knjižnica je bila uspešno posodobljena",
"deleted": "Knjižnica je uspešno izbrisana",
"scanStarted": "Skeniranje knjižnice se je začelo",
"scanCompleted": "Skeniranje knjižnice končano"
"scanCompleted": "Skeniranje knjižnice končano",
"quickScanStarted": "Hitro skeniranje se je začelo",
"fullScanStarted": "Popolno skeniranje se je začelo",
"scanError": "Napaka pri začetku skeniranja. Preverite dnevnike"
},
"validation": {
"nameRequired": "Ime knjižnice je obvezno",
@@ -323,6 +328,78 @@
"scanInProgress": "Skeniranje v teku...",
"noLibrariesAssigned": "Uporabnik nima dodeljenih knjižnic"
}
},
"plugin": {
"name": "",
"fields": {
"id": "",
"name": "",
"description": "",
"version": "",
"author": "",
"website": "",
"permissions": "",
"enabled": "",
"status": "",
"path": "",
"lastError": "",
"hasError": "",
"updatedAt": "",
"createdAt": "",
"configKey": "",
"configValue": "",
"allUsers": "",
"selectedUsers": "",
"allLibraries": "",
"selectedLibraries": ""
},
"sections": {
"status": "",
"info": "",
"configuration": "",
"manifest": "",
"usersPermission": "",
"libraryPermission": ""
},
"status": {
"enabled": "",
"disabled": ""
},
"actions": {
"enable": "",
"disable": "",
"disabledDueToError": "",
"disabledUsersRequired": "",
"disabledLibrariesRequired": "",
"addConfig": "",
"rescan": ""
},
"notifications": {
"enabled": "",
"disabled": "",
"updated": "",
"error": ""
},
"validation": {
"invalidJson": ""
},
"messages": {
"configHelp": "",
"clickPermissions": "",
"noConfig": "",
"allUsersHelp": "",
"noUsers": "",
"permissionReason": "",
"usersRequired": "",
"allLibrariesHelp": "",
"noLibraries": "",
"librariesRequired": "",
"requiredHosts": ""
},
"placeholders": {
"configKey": "",
"configValue": ""
}
}
},
"ra": {
@@ -604,7 +681,8 @@
"serverDown": "NEPOVEZAN",
"scanType": "Tip",
"status": "Napaka pri skeniranju",
"elapsedTime": "Pretečeni čas"
"elapsedTime": "Pretečeni čas",
"selectiveScan": "Selektivno"
},
"help": {
"title": "Hitre tipke",

View File

@@ -328,6 +328,78 @@
"scanInProgress": "กำลังสแกน...",
"noLibrariesAssigned": "ไม่มีห้องสมุดสำหรับผู้ใช้นี้"
}
},
"plugin": {
"name": "ปลั๊กอิน |||| ปลั๊กอิน",
"fields": {
"id": "ID",
"name": "ชื่อ",
"description": "รายละเอียด",
"version": "เวอร์ชั่น",
"author": "ผู้สร้าง",
"website": "เว็บไซต์",
"permissions": "การอนุญาติ",
"enabled": "เปิดใช้",
"status": "สถานะ",
"path": "เส้นทาง",
"lastError": "ผิดพลาด",
"hasError": "ผิดพลาด",
"updatedAt": "อัพเดทแล้ว",
"createdAt": "ติดตั้งแล้ว",
"configKey": "คีย์",
"configValue": "ค่า",
"allUsers": "อนุญาติผู้ใช้ทั้งหมด",
"selectedUsers": "ผู้ใช้ถูกเลือก",
"allLibraries": "อนุญาติห้องสมุดเพลงทั้งหมด",
"selectedLibraries": "ห้องสมุดเพลงถูกเลือก"
},
"sections": {
"status": "สถานะ",
"info": "ข้อมูลปลั๊กอิน",
"configuration": "การตั้งค่า",
"manifest": "แสดง",
"usersPermission": "สิทธิของผู้ใช้",
"libraryPermission": "สิทธิของห้องสมุดเพลง"
},
"status": {
"enabled": "เปิดใช้งานแล้ว",
"disabled": "ปิดใช้งานแล้ว"
},
"actions": {
"enable": "เปิดใช้งาน",
"disable": "ปิดใช้งาน",
"disabledDueToError": "แก้ไขข้อผิดพลาดก่อนเปิดใช้งาน",
"disabledUsersRequired": "เลือกผู้ใช้ที่จะเปิดใช้งาน",
"disabledLibrariesRequired": "เลือกห้องสมุดเพลงที่จะเปิดใช้งาน",
"addConfig": "เพิ่มการตั้งค่า",
"rescan": "สแกนซ้ำ"
},
"notifications": {
"enabled": "เปิดใช้ปลั๊กอินแล้ว",
"disabled": "ปิดใช้ปลั๊กอินแล้ว",
"updated": "ปลั๊กอินอัพเดท",
"error": "อัพเดทผิดพลาด"
},
"validation": {
"invalidJson": "ต้องตั้งค่าตามไวยากรณ์ JSON"
},
"messages": {
"configHelp": "ใส่ค่าให้เข้าคู่กับคีย์ของปลั๊กอิน ปล่อยว่างถ้าปลั๊กอินไม่ต้องการใช้",
"clickPermissions": "กดดูรายละเอียดของการอนุญาติ",
"noConfig": "ไม่ได้ตั้งค่า",
"allUsersHelp": "เมื่อเปิดใช้ ปลั๊กอินจะใช้กับผู้ใช้ทุกคน รวมถึงผู้ใช้ใหม่ในอนาคต",
"noUsers": "ไม่ได้เลือกผู้ใช้",
"permissionReason": "เหตุผล",
"usersRequired": "ปลั๊กอินนี้ต้องการเข้าถึงข้อมูลผู้ใช้ เลือกผู้ใช้ที่ต้องการให้ปลั๊กอินเข้าถึงหรือเปิดใช้งานกับผู้ใช้ทั้งหมด",
"allLibrariesHelp": "เมื่อเปิดใช้งาน ปลั๊กอินจะเข้าถึงทุกห้องสมุดเพลง รวมถึงของผู้ใช้ใหม่ในอนาคต",
"noLibraries": "ไม่มีห้องสมุดเพลงถูกเลือก",
"librariesRequired": "ปลั๊กอินนี้ต้องการเข้าถึงข้อมูลห้องสมุดเพลง เลือกห้องสมุดเพลงที่ต้องการให้ปลั๊กอินเข้าถึงหรือเปิดใช้งานกับห้องสมุดเพลงทั้งหมด",
"requiredHosts": "ต้องการ Host"
},
"placeholders": {
"configKey": "คีย์",
"configValue": "ค่า"
}
}
},
"ra": {