add "community" to packager info

This commit is contained in:
Girish Ramakrishnan
2026-02-21 12:12:36 +01:00
parent 3120a2c43f
commit 95fcfce9cd
5 changed files with 81 additions and 36 deletions

View File

@@ -1331,7 +1331,7 @@
"info": {
"description": "App title & version",
"appId": "App ID",
"packageVersion": "Package",
"packageVersion": "Package version",
"lastUpdated": "Last updated",
"customAppUpdateInfo": "Auto-update is not available for custom apps.",
"installedAt": "Installed",

View File

@@ -6,10 +6,10 @@
"users": "Usuarios",
"errorUserManagementSelectAtLeastOne": "Selecciona al menos un usuario o un grupo",
"userManagementSelectUsers": "Permitir solo a los siguientes usuarios y grupos",
"userManagementAllUsers": "Permitir a todos los usuarios de este Cloudron",
"userManagementAllUsers": "Permitir a todos los usuarios en este Cloudron",
"userManagementLeaveToApp": "Deja la gestión de usuarios a la aplicación",
"userManagementMailbox": "Todos los usuarios con un buzón en este Cloudron tienen acceso.",
"userManagementNone": "Esta aplicación tiene su propia gestión de usuarios. Esta configuración determina si esta aplicación está visible en el panel del usuario.",
"userManagementMailbox": "Los usuarios con un <a href=\"/#/mailboxes\">buzón de correo</a> pueden iniciar sesión con el correo electrónico de su buzón y la contraseña de Cloudron.",
"userManagementNone": "Esta aplicación tiene su propia gestión de usuarios.",
"userManagement": "Gestión de usuarios",
"manualWarning": "Configurar manualmente los registros DNS A (IPv4) y AAAA (IPv6) para <b>{{ location }}</b> que apuntan a este servidor",
"locationPlaceholder": "Dejar vacío para usar solo el dominio",
@@ -31,13 +31,16 @@
"appNotFoundDialog": {
"description": "No hay aplicación <b>{{ appId }}</b> con versión <b>{{ version }}</b>.",
"title": "Aplicación no encontrada"
},
"action": {
"addCustomApp": "Añadir Aplicación personalizada"
}
},
"main": {
"rebootDialog": {
"rebootAction": "Reiniciar ahora",
"description": "Use esto para aplicar actualizaciones de seguridad o si experimenta un comportamiento inesperado. Todas las aplicaciones y servicios que se ejecutan actualmente en este Cloudron se iniciarán automáticamente cuando se complete el reinicio.",
"title": "¿Realmente quieres reiniciar el servidor?"
"description": "Todas las aplicaciones y servicios se reiniciarán automáticamente.<br/><br/>¿Reiniciar el servidor ahora?",
"title": "Reiniciar el servidor"
},
"action": {
"logs": "Registros",
@@ -45,10 +48,15 @@
"remove": "Borrar",
"edit": "Editar",
"add": "Añadir",
"next": "Siguiente"
"next": "Siguiente",
"configure": "Configurar",
"restart": "Reanudar",
"reset": "Reiniciar",
"loadMore": "Cargar más"
},
"table": {
"version": "Versión"
"version": "Versión",
"created": "Creado"
},
"actions": "Acciones",
"displayName": "Nombre para mostrar",
@@ -75,7 +83,13 @@
"groups": "Grupos"
},
"statusEnabled": "Habilitado",
"loadingPlaceholder": "Cargando"
"loadingPlaceholder": "Cargando",
"platform": {
"startupFailed": "El inicio de la plataforma falló"
},
"sidebar": {
"collapseAction": "Contraer la barra lateral"
}
},
"apps": {
"searchPlaceholder": "Busca Aplicaciones",
@@ -84,7 +98,7 @@
"title": "Todavía no tienes acceso a ninguna aplicación."
},
"noApps": {
"description": "¿Qué te parece si instalas algunas? Echa un vistazo a la <a href=\"{{ appStoreLink }}\"> Tienda de Aplicaciones</a>",
"description": "¿Qué tal si instalas algunas? Visita la <a href=\"{{ appStoreLink }}\">App Store</a>.",
"title": "¡No hay aplicaciones instaladas todavía!"
},
"title": "Mis Aplicaciones",
@@ -105,22 +119,22 @@
"externalLdap": {
"errorSelfSignedCert": "El servidor está utilizando un certificado no válido o autofirmado.",
"bindUsername": "Enlazar DN/Nombre de usuario (opcional)",
"bindPassword": "Enlazar Contraseña (opcional)",
"bindPassword": "Vincular contraseña (opcional)",
"groupBaseDn": "Grupo Base DN",
"baseDn": "DN Base",
"configureAction": "Configurar",
"syncAction": "Sincronizar",
"syncAction": "Sincronizar ahora",
"autocreateUsersOnLogin": "Crear usuarios automáticamente al iniciar sesión",
"groupnameField": "Campo de Nombre de Grupo",
"groupFilter": "Filtro de Grupo",
"syncGroups": "Sincronizar Grupos",
"syncGroups": "Sincronizar grupos",
"usernameField": "Campo de Nombre de Usuario",
"filter": "Filtro",
"acceptSelfSignedCert": "Aceptar Certificado Autofirmado",
"acceptSelfSignedCert": "Aceptar certificado autofirmado",
"server": "URL del Servidor",
"provider": "Proveedor",
"noopInfo": "La autentificación LDAP no está configurada.",
"description": "Esta configuración sincroniza y autentifica usuarios y grupos desde un servidor LDAP o Active Directory externo. La sincronización se ejecuta periódicamente pero también se puede activar manualmente.",
"noopInfo": "No hay ningún directorio externo configurado",
"description": "Sincroniza y autentifica usuarios y grupos desde un servidor LDAP o Active Directory externo. La sincronización se ejecuta periódicamente cada 4 horas.",
"title": "Conectar un directorio externo",
"auth": "Auth",
"disableWarning": "La fuente de autentificación de todos los usuarios existentes se restablecerá para autentificarse en la base de datos de contraseñas local."
@@ -200,11 +214,11 @@
"title": "Borrar Usuario {{ username }}"
},
"user": {
"activeCheckbox": "Usuario activo",
"activeCheckbox": "El usuario está activo",
"recoveryEmail": "Correo electrónico de recuperación de contraseña",
"primaryEmail": "Email Principal",
"displayName": "Nombre para mostrar",
"usernamePlaceholder": "Opcional. Si no se proporciona, el usuario puede elegirlo durante el registro",
"usernamePlaceholder": "Opcional. Si no se proporciona, el usuario puede elegirlo durante el registro.",
"noGroups": "No hay grupos disponibles.",
"groups": "Grupos",
"role": "Rol",

View File

@@ -280,7 +280,8 @@
"app": "Aplikasi",
"title": "Kata sandi Aplikasi",
"noPasswordsPlaceholder": "Tidak ada kata sandi aplikasi",
"description": "Kata sandi aplikasi adalah langkah keamanan untuk melindungi akun pengguna Cloudron Anda. Jika Anda perlu mengakses aplikasi Cloudron dari aplikasi seluler atau klien yang tidak tepercaya, Anda dapat masuk dengan nama pengguna Anda dan kata sandi alternatif yang dihasilkan di sini."
"description": "Kata sandi aplikasi adalah langkah keamanan untuk melindungi akun pengguna Cloudron Anda. Jika Anda perlu mengakses aplikasi Cloudron dari aplikasi seluler atau klien yang tidak tepercaya, Anda dapat masuk dengan nama pengguna Anda dan kata sandi alternatif yang dihasilkan di sini.",
"expires": "Kadaluarsa"
},
"apiTokens": {
"name": "Nama",
@@ -300,7 +301,10 @@
"token": "Token",
"enable": "Aktifkan",
"mandatorySetup": "2FA diperlukan untuk mengakses dasbor. Silakan selesaikan pengaturan untuk melanjutkan.",
"authenticatorAppDescription": "Gunakan Google Authenticator (<a href=\"{{ googleAuthenticatorPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ googleAuthenticatorITunesLink }}\" target=\"_blank\">iOS</a>), FreeOTP authenticator (<a href=\"{{ freeOTPPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ freeOTPITunesLink }}\" target=\"_blank\">iOS</a>) atau aplikasi TOTP serupa untuk memindai kode rahasia."
"authenticatorAppDescription": "Gunakan Google Authenticator (<a href=\"{{ googleAuthenticatorPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ googleAuthenticatorITunesLink }}\" target=\"_blank\">iOS</a>), FreeOTP authenticator (<a href=\"{{ freeOTPPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ freeOTPITunesLink }}\" target=\"_blank\">iOS</a>) atau aplikasi TOTP serupa untuk memindai kode rahasia.",
"passkeyOption": "Pengaturan passkey",
"totpOption": "Pengaturan TOTP",
"registerPasskey": "Daftarkan passkey"
},
"language": "Bahasa",
"loginTokens": {
@@ -318,7 +322,8 @@
"title": "Tambahkan Kata Sandi Aplikasi",
"name": "Nama kata sandi",
"description": "Gunakan kata sandi berikut untuk mengautentikasi terhadap aplikasi:",
"copyNow": "Silakan salin kata sandi sekarang. Kata sandi ini tidak akan ditampilkan lagi untuk alasan keamanan."
"copyNow": "Silakan salin kata sandi sekarang. Kata sandi ini tidak akan ditampilkan lagi untuk alasan keamanan.",
"expiresAt": "Tanggal kedaluwarsa"
},
"disable2FAAction": "Nonaktifkan 2FA",
"enable2FAAction": "Aktifkan 2FA",
@@ -354,6 +359,12 @@
"removeAppPassword": {
"title": "Hapus Kata sandi Aplikasi",
"description": "Hapus kata sandi aplikasi \"{{ name }}\"?"
},
"twoFactorAuth": {
"title": "Autentikasi dua faktor",
"disabled": "Dinonaktifkan",
"totpEnabled": "Menggunakan kata sandi sekali pakai berbasis waktu (TOTP)",
"passkeyEnabled": "Menggunakan passkey"
}
},
"backups": {
@@ -800,7 +811,9 @@
"changeDashboardDomain": {
"title": "Dasbor Domain",
"description": "Ubah dashboard ke subdomain 'my' pada domain yang dipilih",
"changeAction": "Ubah domain"
"changeAction": "Ubah domain",
"confirmMessage": "Ini akan membatalkan semua passkey untuk pengguna.",
"confirmTitle": "Apakah Anda benar-benar ingin mengubah domain dasbor?"
},
"domainDialog": {
"addTitle": "Tambahkan Domain",
@@ -858,7 +871,9 @@
"inwxUsername": "Nama pengguna INWX",
"inwxPassword": "Kata sandi INWX",
"customNameservers": "Domain menggunakan nameserver kustom (vanity)",
"zoneNamePlaceholder": "Opsional. Jika tidak disediakan, akan menggunakan domain utama sebagai bawaan."
"zoneNamePlaceholder": "Opsional. Jika tidak disediakan, akan menggunakan domain utama sebagai bawaan.",
"carddavLocation": "Lokasi server CardDAV",
"caldavLocation": "Lokasi server CalDAV"
},
"removeDialog": {
"title": "Hapus Domain",
@@ -919,7 +934,8 @@
"restartApp": "Mulai ulang Aplikasi",
"uploadFolder": "Unggah folder",
"openTerminal": "Buka terminal",
"openLogs": "Buka log"
"openLogs": "Buka log",
"refresh": "Segarkan"
},
"extractionInProgress": "Ekstraksi sedang berlangsung",
"pasteInProgress": "Penempelan sedang berlangsung",
@@ -1471,7 +1487,17 @@
"title": "Arsipkan Aplikasi",
"description": "Hapus aplikasi {{ app }} dan pindahkan cadangan terbarunya (dibuat pada {{ date }}) ke arsip aplikasi?"
},
"updateAvailableTooltip": "Pembaruan tersedia"
"updateAvailableTooltip": "Pembaruan tersedia",
"start": {
"title": "Mulai",
"description": "Mulai aplikasi untuk membuatnya tersedia kembali.",
"action": "Mulai"
},
"stop": {
"action": "Berhenti",
"title": "Berhenti",
"description": "Hentikan aplikasi untuk menghemat sumber daya. Cadangkan sebelum menghentikan untuk mempertahankan perubahan terakhir."
}
},
"setupAccount": {
"errorPassword": "Kata sandi harus setidaknya 8 karakter",
@@ -1664,7 +1690,8 @@
"resetPasswordAction": "Atur ulang kata sandi",
"errorIncorrect2FAToken": "Token 2FA tidak valid",
"errorInternal": "Terjadi kesalahan internal, coba lagi nanti",
"loginAction": "Masuk"
"loginAction": "Masuk",
"usePasskeyAction": "Gunakan passkey"
},
"passwordReset": {
"title": "Pengaturan ulang kata sandi",
@@ -1688,6 +1715,7 @@
}
},
"communityapp": {
"installwarning": "Aplikasi komunitas tidak ditinjau oleh Cloudron. Hanya instal aplikasi dari pengembang tepercaya. Kode pihak ketiga dapat membahayakan sistem Anda."
"installwarning": "Aplikasi komunitas tidak ditinjau oleh Cloudron. Hanya instal aplikasi dari pengembang tepercaya. Kode pihak ketiga dapat membahayakan sistem Anda.",
"unstablewarning": "Aplikasi ini ditandai sebagai tidak stabil oleh pengembangnya."
}
}

View File

@@ -684,7 +684,9 @@
"changeDashboardDomain": {
"changeAction": "Domein aanpassen",
"title": "Dashboard Domein",
"description": "Verander het Dashboard naar het “my” subdomein van het geselecteerde domein"
"description": "Verander het Dashboard naar het “my” subdomein van het geselecteerde domein",
"confirmMessage": "Dit zal alle passkeys voor gebruikers ongeldig maken.",
"confirmTitle": "Wil je echt het dashboard-domein wijzigen?"
},
"removeDialog": {
"title": "Verwijder domein",
@@ -1282,7 +1284,8 @@
"newFolder": "Nieuwe map",
"uploadFolder": "Upload map",
"openTerminal": "Open terminal",
"openLogs": "Open logbestanden"
"openLogs": "Open logbestanden",
"refresh": "Ververs"
},
"extractionInProgress": "Bezig met uitpakken",
"pasteInProgress": "Bezig met plakken",

View File

@@ -84,13 +84,6 @@ onMounted(() => {
<div class="info-value" v-else>{{ app.manifest.dockerImage }}</div>
</div>
<div class="info-row" v-if="app.versionsUrl">
<div class="info-label">{{ $t('app.updates.info.packager') }}</div>
<div class="info-value">
<a :href="app.manifest.packagerUrl" target="_blank">{{ app.manifest.packagerName }}</a>
</div>
</div>
<div class="info-row">
<div class="info-label">{{ $t('app.updates.info.appId') }}</div>
<div class="info-value">
@@ -108,6 +101,13 @@ onMounted(() => {
<div class="info-value" v-else>{{ app.manifest.version }} <ClipboardAction plain :value="app.manifest.version"/></div>
</div>
<div class="info-row" v-if="app.versionsUrl">
<div class="info-label">{{ $t('app.updates.info.packager') }}</div>
<div class="info-value">
<a :href="app.manifest.packagerUrl" target="_blank">{{ app.manifest.packagerName }}</a> (community)
</div>
</div>
<div class="info-row">
<div class="info-label">{{ $t('app.updates.info.installedAt') }}</div>
<div class="info-value">{{ prettyDate(app.creationTime) }}</div>