1. Introducció
El «lliurex-version» proporciona funcionalitats per a la detecció i obtenció d'informació referida al sistema sobre el qual s'executa.
L'ús principal d'aquest executable és facilitar i simplificar la construcció d'scripts que implementen funcionalitats en el sistema i que requerisquen variar el seu funcionament, depenent del tipus de sistema de funcionament, usuari o sabor instal·lats.
D'aquesta manera queda centralitzada en aquest programa la lògica per a obtindre característiques; s'ha d'evitar, sempre que siga possible, la duplicitat de lògica de detecció, així en canvis futurs es limita el nombre de paquets per modificar si canvien les característiques del sistema.
La compatibilitat del programa s'ha pensat per a poder substituir la versió anterior, de manera que siga compatible pel que fa a paràmetres i resultat obtingut.
Ja que aquesta nova implementació està inclosa en el LliureX 16, es prendrà com a base per a desenvolupaments futurs d'aquesta plataforma. No obstant això, la compatibilitat s'ha pensat de manera que es puga utilitzar en el LliureX 15 i encara que no estarà inclòs per defecte, es pot utilitzar a través del paquet lliurex-detect.
2. Ús
2.1. Funcionalitats heretades del lliurex-version versió anterior:
- -n: obté la versió del metapaquet instal·lat, es pot utilitzar per a saber com d'actualitzat està un sistema.
- -v: obté el tipus de meta (sabor) instal·lat en el sistema.
- -t paràmetre: executa un test de comprovació amb el paràmetre proporcionat, per a obtindre si està inclòs en les cadenes d'informació del meta (sabor) instal·lat, el resultat s'obté amb el codi d'eixida del programa, i és útil per a executar condicionals en scripts.
- --history: obté un historial de les instal·lacions o canvis de metapaquet que ha patit el sistema.
- (sense paràmetres): obté una cadena que inclou les operacions -n i -v conjuntament.
2.2. Característiques noves (lliurex-base-files >= 16.06.8)
- -f: obté el meta (sabor) instal·lat en el sistema. Aquesta versió ofereix informació simplificada respecte a l'opció -v i elimina opcions innecessàries. Amb aquesta opció es pot obtindre una única cadena que defineix el meta instal·lat.
- -s: obté el tipus de sessió sobre el qual s'està executant el lliurex-version. Exemples d'eixida podrien ser "fat", "semi"... "ltsp"; opcionalment es poden obtindre dues cadenes si s'està executant un sistema en mode CD autònom quan l'última opció és "autònom". L'exemple més habitual: 'fat,live'
- -u usuari: executa una comprovació de l'usuari que està executant el programa; obté el nom d'usuari, si ha estat promogut (pertinença al grup admin) o si és un usuari local o autenticat contra el sistema Ldap.
- El format d'eixida és el següent: *nom_usuari/(local|ldap), aquest format especifica amb un asterisc com a primera lletra si l'usuari ha estat ascendit, a continuació el nom d'usuari actual i finalitza amb un caràcter "/" i un dels dos tipus: ldap per a usuaris de xarxa o local per a usuaris que pertanyen al sistema local.
- Opcionalment es pot passar un paràmetre amb el nom d'un usuari, i executa la comprovació utilitzant aquest nom d'usuari; és útil per a distingir altres usuaris.
- -a: obté totes les informacions del sistema juntes, en una cadena separada per comes; s'obté l'equivalent a les opcions -s -f -u (sense paràmetre) juntes.
- -e: (cal utilitzar-lo amb alguna de les opcions -f -s -u -a); mode per a utilitzar el mètode eval, aquest mode prepara una eixida per a un format VARIABLE=valor en el qual es pot passar al mètode eval en l'inici d'un script i tindre disponible la informació consultant les variables. D'aquesta manera, s'evita haver de realitzar múltiples cridades al programa.
- Exemple:> eval export $(lliurex-version -e -a)
- Algunes de les variables que s'utilitzen són:
- SERVER,DESKTOP,CLIENT,INFANTIL,MUSIC,PIME... amb valor yes | no
- LIVE,LTSP,THIN,SEMI,FAT... amb valor yes | no
- USERNAME amb valor del nom d'usuari
- LOGIN_TYPE amb valor de local | ldap
- PROMOTED_USER amb valor yes | no
- -x [live|ltsp|fat|semi|thin|desktop|server|client|infantil|pime|music|local|ldap|promoted]: mode per a realitzar comparacions ràpides amb algun valor dels possibles (distingeix majúscules i minúscules), i torna un codi d'eixida per a utilitzar-lo en comparacions. És una extensió més generalitzada de l'opció -t.
- Exemple:> lliurex-version -x thin && echo és un client lleuger || echo no és un client lleuger
- if lliurex-version -x ltsp; then echo si ; else no; fi
- lliurex-version -u netadmin -x ldap && echo si