Qual è l'equivalente delle versioni locali di Debian?


8

Su Debian, posso fare affidamento su un pacchetto locales-allper garantire che tutte le versioni locali siano installate / disponibili. Non esiste un pacchetto simile in Ubuntu.

Una volta aveva quello belocs-locales-*che sembrava fare lo stesso; in alternativa, si potrebbe dipendere da vari pacchetti di localizzazione (ad esempio solo de+ en+ frper la maggior parte dell'Europa occidentale, che è di uso limitato; a volte, il software in effetti richiede tutti i locali standard). Questi pacchetti sono scomparsi tra hardy e preciso, AFAICT.

Quindi, quale pacchetto Ubuntu posso Dependsavere per avere tutte le versioni locali disponibili?

Modifica: questo non è lo stesso del localespacchetto, che fornisce semplicemente i file di dati necessari per generare le localizzazioni; semplicemente l'installazione del locales-allpacchetto in Debian rende immediatamente disponibili quelle localizzazioni e tutte. (Contiene un pacchetto, nelle ultime versioni, che consente di risparmiare molto spazio.) In questo modo, l'utente non ha una manopola in cui può (accidentalmente) disabilitare le impostazioni locali necessarie.


Non penso che ci sia un equivalente in Ubuntu. Uno dei motivi per cui locales-all non è incluso nell'archivio Ubuntu potrebbe essere che sarebbe in conflitto con il modo in cui il sistema langpack di Ubuntu gestisce la creazione delle impostazioni locali (ma è solo una supposizione). Per curiosità: che tipo di programma avrebbe bisogno di un accesso immediato a tutte le versioni locali supportate?
Gunnar Hjalmarsson,

@GunnarHjalmarsson diversi tipi di webapp: ne conosco uno che utilizza le localizzazioni di sistema per i18n lato server e ne conosco uno che presenta errori inspiegabili che scompaiono durante l'installazione locales-all. Il mio attuale "trigger per chiedere" è un pacchetto che contiene elementi che dipendono da una specifica locale, ma l'utilizzo localesè fuori discussione perché altri pacchetti o l'amministratore locale possono disabilitare la locale in un secondo momento, se lo abilito usando ad esempio le impostazioni debconf.
mirabilos,


Si accorse. Ho aggiunto un'attività per langpack-locales , che penso sia il pacchetto Ubuntu corretto.
Gunnar Hjalmarsson,

Risposte:


4

Ho trovato la seguente soluzione su https://docs.moodle.org/dev/Table_of_locales

   sudo ln -s /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/all
   sudo locale-gen

1
Forse sì. Ma non posso farlo in un pacchetto. (Vedi sopra: senza che l'utente sia in grado di disabilitarlo di nuovo (tranne disinstallando il mio pacchetto o locales-all). Forse forse ha bisogno ln -sfanche di questo ...
mirabilos,

1

A meno che non stia leggendo il tuo errore, questo è solo localesora.

Fa parte dei minimal^requisiti dell'attività così come ubuntu-minimaldirettamente, quindi dovrebbe essere sempre installato. Non devi dipendere da nulla per garantirne la presenza, ma se hai bisogno di qualcosa, scegli ubuntu-minimalo qualcos'altro di cui hai bisogno, dipende anche da ubuntu-minimal. Questo è un default piuttosto sano.


Guardando il contenuto di Debianlocales-all posso vedere molti file come questo che non sono nel localespacchetto Ubuntu standard (vedi dpkg -L locales):

/usr/lib/locale/am_ET/LC_ADDRESS
/usr/lib/locale/am_ET/LC_COLLATE
/usr/lib/locale/am_ET/LC_CTYPE
/usr/lib/locale/am_ET/LC_IDENTIFICATION
/usr/lib/locale/am_ET/LC_MEASUREMENT
/usr/lib/locale/am_ET/LC_MESSAGES/SYS_LC_MESSAGES
/usr/lib/locale/am_ET/LC_MONETARY
/usr/lib/locale/am_ET/LC_NAME
/usr/lib/locale/am_ET/LC_NUMERIC
/usr/lib/locale/am_ET/LC_PAPER
/usr/lib/locale/am_ET/LC_TELEPHONE
/usr/lib/locale/am_ET/LC_TIME

Ho cercato pacchetti.ubuntu.com per file simili e non sono riuscito a trovarne. Ciò significa che o non sono impacchettati, hanno nomi drasticamente diversi o vengono estratti all'installazione (rari ma possibili).

L'unica eccezione che posso vedere sono le versioni locali installate libc-binin /usr/lib/locale/C.UTF-8/.


Ooo, potrei essere stato con i soldi con l'estrazione. Il localespacchetto include locale-genun'applicazione che genera questo tipo di file. Vedi la wiki per maggiori informazioni sulle localizzazioni .


2
Solo il localespacchetto non è abbastanza - vero, con locale-genpotrei generare localizzazioni specifiche, ma questo non sostituisce il locales-allche le rende tutte disponibili senza la necessità di eseguire un comando aggiuntivo (e senza che l'utente sia in grado di disabilitare nuovamente manualmente quelle localizzazioni) . Questo è vero anche in Debian.
mirabilos,

0

So che è una vecchia domanda, ma hai provato a installare tutti i language pack tramite apt-get? Potrei risolvere un problema simile in cui avrei bisogno di un sacco di localizzazioni diverse in un server e risolto in esecuzione sudo apt-get install language-pack-*. Ha scaricato tutti i file (circa 2 GB al termine del disimballaggio) e ha generato tutte le impostazioni locali disponibili.


Grazie, ma questa non è una soluzione coerente, soprattutto perché ho bisogno di esprimerla come dipendenza del pacchetto, non come cosa interattiva, e un language pack è molto più di un semplice locale.
mirabilos,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.