Waldo Bastian bastian@kde.org &Philip.Rodrigues; &Philip.Rodrigues.mail; &kde; per administradors Interioritats de &kde; Vista general per escriure Distribució de directoris &kde; defineix un sistema de fitxers jeràrquic que és usat per l'entorn de &kde; mateix així com per totes les aplicacions &kde;. En general &kde; desa tots els seus fitxers en un arbre de directoris amb una estructura fixa. Per omissió &kde; usa dos arbres de directori: Un a nivell de sistema (per exemple /opt/kde3). Un altra a nivell d'usuari en el directori inici de l'usuari (normalment ~/.trinity) Com administrador del sistema podreu crear arbres addicionals. Es poden usar arbres addicionals per als perfils &SuSE; &Linux; per exemple usa: $HOME/.trinity /opt/kde3 (Aquest és específic per a &SuSE;. D'altres distribucions poden usar /usr o /usr/kde3) /etc/opt/kde3 (Aquest fou afegit per &SuSE;). Si teniu l'eina d'administració KIOSK v0.7 o posterior instal·lada podreu comprovar quins arbres de directori s'usaran amb el següent comandament: kiosktool-tdedirs &kde; i les aplicacions &kde; cerquen fitxers explorant tots els arbres de directori de &kde;. Els arbres de directori es comproven en ordre de prioritat. Quan un fitxer apareix en diversos arbres de directori, el fitxer de l'últim arbre tindrà prioritat. Normalment, l'arbre situat en el directori inici de l'usuari tindrà la màxima prioritat. També és l'arbre de directoris en el que s'escriuen els canvis. Per obtenir informació sobre escriure el tipus &MIME; text/plain es cerquen els següents fitxers: $HOME/.trinity/share/mimelnk/text/plain.desktop /opt/kde3/share/mimelnk/text/plain.desktop /etc/opt/kde3/share/mimelnk/text/plain.desktop Si un usuari fa un canvi, el canvi s'escriu en $HOME/.trinity/share/mimelnk/text/plain.desktop Per als fitxers de configuració la història és lleugerament diferent. Si hi ha múltiples fitxers de configuració en l'arbre de directoris amb el mateix nom, es combinen els seus continguts. L'ordre de prioritat dels arbres de directori aquí és una cosa important. Quan dos fitxers estableixen la mateixa clau de configuració, el fitxer amb la màxima prioritat determina quin valor s'usarà per a la clau. Per exemple, si hi ha els dos següents fitxers amb aquests continguts: $HOME/.trinity/share/config/foobar Color=red Shape=circle /etc/opt/kde3/share/config/foobar Color=blue Position=10,10 Els fitxers seran fusionats donant el següent resultat: Color=red Shape=circle Position=10,10 Especificar directoris Variable d'entorn Exemple(s) de configuració Comentari TDEHOME ~/.trinity TDEROOTHOME /root/.trinity Aquesta variable és diferent de $TDEHOME per evitar que el root escrigui la variable $TDEHOME de l'usuari després d'executar su. TDEDIR /opt/kde3, /usr, /usr/kde3 Dependrà del venedor. Usat per &kde;2. Si no està establerta, s'usarà la compilació per omissió. TDEDIRS /opt/kde3, /usr, /usr/kde3 Nou en &kde; 3. Pot llistar múltiples localitzacions separades per dos punts. Si no està establerta, s'usarà $TDEDIR No necessita ser establerta, els valors per omissió funcionen perfectament. I si es volen executar alternativament &kde; 2 i &kde; 3? $TDEDIR apuntarà a &kde; 2 i $TDEDIRS a &kde; 3. Un membre d'una universitat podria tenir la següent configuració: TDEHOME='~/.trinity3' TDEROOTHOME='/root/.trinity3' TDEDIRS='/opt/kde_staff:/opt/kde3' Perfils d'usuari En l'exemple anterior /opt/kde_staff conté configuracions i aplicacions addicionals per als membres. Els Perfils d'usuari us permetran afegir aquest directori tan sols per a uns usuaris i no per a d'altres. Afegiu el següent a /etc/tderc: [Directories-staff] prefixes=/opt/kde_staff Això crea un perfil anomenatstaff que afegeix /opt/kde_staff a l'arbre de directoris. (Per exemple &SuSE; &Linux; usa /etc/kde3rc en lloc de /etc/tderc). Ara que hem indicat nombre al perfil hi haurà que assignar als usuaris. El mapa de perfils d'usuari precisa d'un fitxer que s'ha d'especificar en /etc/tderc: [Directories] userProfileMapFile=/etc/kde-user-profile Ara és possible assignar un perfil basat en el grup &UNIX; dels que forma part. Per assignar el perfil staff a tots els usuaris que siguin membres del grup &UNIX; staff_members afegiu el següent a /etc/kde-user-profile: [General] groups=staff_members [Groups] staff_members=staff També és possible assignar un perfil a tan sols un usuari: [Users] bastian=staff Revisió de la distribució de directoris Cada arbre de directoris usat per &kde; te una estructura de directoris fixa. Els directoris que no són importants per a alguns arbres, o simplement no usats són obviats. Per exemple, els directoris usats per als fitxers temporals es solen col·locar sota $TDEHOME però no en qualsevol altra arbre de directoris. Directoris específics de l'arquitectura Els directoris específics de l'arquitectura (SO i tipus de CPU): bin Usat per als executables de &kde;. lib Usat per les biblioteques de &kde;. lib/kde3 Aquest directori conté components, connectors i d'altres objectes usats per les aplicacions &kde; 3.x que es poden carregar en temps d'execució. Directoris compartits Compartits: No específics d'una arquitectura, poden ser compartits per diferents arquitectures. share/applnk fitxers .desktop per al menú &kde; (antic) share/applications fitxers .desktop per al menú &kde; (des de &kde; 3.2). share/apps Conté fitxers de dades per a aplicacions específiques. Cada aplicació te aquí un subdirectori per a desar fitxers de dades addicionals. share/config Fitxers de configuració. Els fitxers de configuració normalment tenen el mateix nom que l'aplicació a la qual pertanyen més les lletres rc. Un cas especial és kdeglobals. Aquest fitxer és llegit per totes les aplicacions &kde;. share/config/session Aquest directori s'usa per a la gestió de la sessió i tan sols està disponible sota $TDEHOME. Al final d'una sessió de &kde; les aplicacions desen aquí el seu estat. Els noms dels fitxers es componen del nom de l'aplicació seguit per un número. El gestor de la sessió ksmserver desa referències a aquests números quan desa una sessió en ksmserverrc. share/doc/HTML Aquest directori conté la documentació per a les aplicacions de &kde;. La documentació està separada per idiomes i per l'aplicació propietària de la mateixa. Normalment al menys hi ha dos fitxers en un directori index.docbook, el qual conté la documentació en format DocBook sense formatar i index.cache.bz2, que te la mateixa informació formatada com a &HTML; compremut amb bzip2. La versió &HTML; és usada per &khelpcenter;. Si falta la versió &HTML; &khelpcenter; la regenerarà a partir de la versió DocBook però això consumeix temps de procés. share/icons En aquest directori es desen les icones. Les icones es divideixen per temes, dimensions i categoria d'ús. share/mimelnk En aquest directori, es desen els fitxers .desktop descrits pels tipus &MIME;. &kde; usa els tipus &MIME; per identificar el tipus d'un fitxer. share/services Aquest directori conté els fitxers .desktop que descriuen serveis. Els serveis són com aplicacions però que són carregats per d'altres aplicacions en comptes de l'usuari. Els serveis no apareixen en el menú &kde;. share/servicetypes Aquest directori conté fitxers .desktop que descriuen tipus de servei. Un tipus de servei sol representar una determinada interfície de programació. Les aplicacions i serveis inclouen en els seus propis fitxers .desktop els tipus de servei que proveeixen. share/sounds Aquest directori conté fitxers de so. share/templates Aquest directori conté plantilles per a crear fitxers de diversos tipus. Una plantilla és un fitxer .desktop que descriu el fitxer i que inclou un referència a un fitxer en el subdirectori .source. Les plantilles d'aquest directori apareixen en el menú Crea nou disponible en l'escriptori i en el navegador de fitxers. Quan un usuari selecciona una plantilla d'aquest menú es copia el seu fitxer font. share/wallpapers Aquest directori conté imatges que es poden usar com a imatge de fons Directoris específics de la màquina Hi ha tres directoris específics que solen ser enllaços simbòlics a altres localitzacions. Si els directoris no existeixen, es podran crear els següents enllaços simbòlics i directoris usant la utilitat lnusertemp: $TDEHOME/socket-$HOSTNAME Normalment /tmp/tdesocket-$USER/, sol ser usat per diverses connexions &UNIX;. $TDEHOME/tmp-$HOSTNAME Normalment /tmp/tde-$USER/, s'usa per als fitxers temporals. $TDEHOME/cache-$HOSTNAME Normalment /var/tmp/tdecache-$USER/, s'usa per als fitxers a la memòria cau. Atès que tant /tmp com /var/tmp es poden escriure per tots, és possible que un d'aquests directoris ja existeixi però que sigui propietat d'un altra usuari. En aquest cas la utilitat lnusertemp crearà un nou directori amb un nom alternatiu i l'enllaçarà. Fitxers de configuració &kde; usa un format de fitxer basat en text simple per a tots els seus fitxers de configuració. Consisteix en claus-valor parelles que són situades per grups. Tots els fitxers de configuració de &kde; usen UTF-8 codificant el text extern en ASCII. L'inici d'un grup és indicat per un nom de grup situat entre claudàtors. Totes les entrades clau-valor que segueixen pertanyen al grup. El grup finalitza quan s'inicia un altra grup o quan s'abasta el final del fitxer. Les entrades de la part superior del fitxer que no estan precedides pel nom de grup pertanyen al grup per omissió. El següent exemple mostra un fitxer de configuració que conté dos grups. El primer conté les claus LargeCursor i SingleClick, el segon conté les claus Show hidden files i Sort by: [KDE] LargeCursor=false SingleClick=true [KFileDialog Settings] Show hidden files=false Sort by=Name Les entrades den un grup estan formades per una clau i un valor separats per un signe igual. La clau pot contenir espais i la pot seguir les opcions col·locades entre claudàtors. La part posterior al signe igual és el valor de l'entrada. Qualsevol espai en blanc que rodegi al signe igual serà ignorat, com si no n'hi fos. Per a ser més concís, el format és: entrada=valor Si un valor es suposa que ha d'incloure un espai al començament o al final llavores podrà ser arxivat usant una barra invertida seguida d'una s. Hi ha alguns altres codis de barra invertida, aquí està la llista completa: \s se pot usar com un espai \t es pot usar per incloure un tabulador \r per a un caràcter de retorn de carro \n per a un caràcter de retorn de línia (nova línia) \\ per incloure la barra invertida En el següent exemple el valor de l'entrada Caption s'inicia amb dos espais mentre que l'entrada Description conté tres línies de text. Els salts de línia en la notació de barra invertida s'usen per a separar les línies diferents. [Preview Image] Caption=\s My Caption Description=This is\na very long\ndescription. Les línies buides en els fitxers de configuració són ignorades, així com les línies que comencin amb una marca de número (#). La marca de número es pot usar per afegir comentaris als fitxers de configuració. Hauríeu de tenir en compte que quan una aplicació &kde; actualitza un fitxer de configuració els comentaris no són conservats. Poden haver-hi múltiples fitxers de configuració amb el mateix nom en el subdirectori share/config o en diversos directoris de l'arbre de directoris de &kde;. En aquest cas la informació d'aquests fitxers de configuració es combinen en una base clau per clau. Si la mateixa clau d'un grup es defineix en diversos llocs, el valor de la clau es prendrà de l'arbre de directoris amb major prioritat. Els fitxers de configuració sota $TDEHOME sempre tindran la màxima prioritat. Si una clau en un determinat grup es defineix diverses vegades en un mateix fitxer, es prendrà el valor de l'última entrada usada. Si $HOME/.trinity/share/config/foobar conté: [MyGroup] Color=red Shape=circle i /etc/opt/kde3/share/config/foobar conté [MyGroup] Color=blue Position=10,10 el resultat serà: [MyGroup] Color=red Shape=circle Position=10,10 Si $HOME/.trinity/share/config/foobar conté [MyGroup] Color=red Shape=circle [MyGroup] Color=green i /opt/kde_staff/share/config/foobar conté [MyGroup] Color=purple Position=20,20 i /etc/opt/kde3/share/config/foobar conté [MyGroup] Color=blue Position=10,10 el resultat serà: [MyGroup] Color=green Shape=circle Position=20,20 Per evitar que els usuaris siguin capaços de sobreescriure les configuracions per omissió, aquestes configuracions es marquen com a no modificables. Les configuracions es poden fer no modificables de forma individual, per grups o per fitxer. Una entrada individual es pot blocar afegint [$i] al darrera de la clau, &pex;: Color[$i]=blue Un grup d'entrades es pot blocar col·locant [$i] al darrera del nom de grup, &pex;: [MyGroup][$i] Per a blocar un fitxer complet, inicia el fitxer amb [$i] en una sola línia, &ead;: [$i] Si $HOME/.trinity/share/config/foobar conté: [MyGroup] Color=red Shape=circle i /etc/opt/kde3/share/config/foobar conté: [MyGroup][$i] Color=blue Position=10,10 el resultat serà: [MyGroup] Color=blue Position=10,10 Si $HOME/.trinity/share/config/foobar conté: [MyGroup] Color=red Shape=circle i /opt/kde_staff/share/config/foobar conté [MyGroup] Color=purple Shape=rectangle i /etc/opt/kde3/share/config/foobar conté [MyGroup][$i] Color=blue Position=10,10 el resultat serà [MyGroup] Color=purple Shape=rectangle Position=10,10 L'anomenada expansió de l'intèrpret de comandaments es pot usar per a proveir més valors dinàmics per omissió. Amb la expansió de l'intèrpret de comandaments el valor d'una clau de configuració es pot construir a partir del valor d'una variable d'entorn o a partir de la sortida d'un comandament de l'intèrpret de comandaments. Per habilitar la expansió de l'intèrpret de comandaments per a una entrada de configuració, la clau haurà d'estar seguida per [$e]. Normalment la forma estesa està escrita en els fitxers de configuració dels usuaris després de la primera vegada que s'usa. Per prevenir-ho, és recomanable blocar l'entrada de configuració usant [$ie]. L'usuari no podrà canviar-la per descomptat. En el següent exemple el valor per a l'entrada Host està determinada per la sortida del programa hostname. Aquesta configuració també està blocada per assegurar-se que el valor serà sempre determinat dinàmicament. El valor per a l'entrada Email es determina omplint els valors de les variables d'entorn $USER i $HOST. Quan jordi es connecta en jordi_màquina es retornarà un valor igual a jordi@jordi_màquina. La configuració no està blocada. [Mail Settings] Host[$ie]=$(hostname) Email[$e]=${USER}@${HOST} La majoria de les entrades es poden indexar amb un codi d'idioma. En aquest cas, l'idioma seleccionat per l'usuari per a usar-lo en el seu escriptori és l 'usat com a valor clau. Si l'idioma per omissió (anglès americà) ha estat seleccionat o si no hi ha índex corresponent a l'idioma seleccionat, s'usarà l'entrada clau sense índex. En el següent exemple el valor de l'entrada Caption dependrà de l'idioma. Si l'usuari ha seleccionat francès com a idioma (codi d'idioma fr) el valor de l'entrada serà Ma Légende. En qualsevol altra cas el valor usat serà My caption. [Preview Image] Caption=My Caption Caption[fr]=Ma Légende En aquest exemple el valor de l'entrada Caption dependrà de l'idioma. Si l'usuari ha seleccionat francès com a idioma (codi d'idioma fr) el valor de l'entrada serà Ma Légende. En qualsevol altra cas el valor usat serà My caption. [Preview Image] Caption=My Caption Caption[fr]=Ma Légende En general les entrades que apareixen en un fitxer de configuració no estan documentades. Amb &kde; 3.2 s'ha començat a canviar això. En $TDEDIR/share/config.kcfg, es poden trobar els fitxers que proveeixen una descripció formal de les possibles entrades en un fitxer de configuració. Aquestes s'usaran per al nou editor de configuració de &kde; quan estigui disponible. Aquí hi ha un exemple d'un fitxer de configuració &XML;: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE kcfg SYSTEM "http://www.kde.org/standards/kcfg/1.0/kcfg.dtd"> <kcfg> <kcfgfile name="korganizerrc"/> <group name="General"> <entry type="Bool" key="Auto Save"> <label>Enable automatic saving of calendar</label> <default>true</default> </entry> <entry type="Int" key="Auto Save Interval"> <default>10</default> </entry> </group> </kcfg> Tindrà el mateix efecte que: [General] Auto Save=false Auto Save Interval=25 Seqüència d'inici de &kde; &tdm; Sempre s'executa com a root! Usa $TDEDIR/share/config/tdmrc i /etc/X11/xdm/Xservers. L'últim conté una entrada com: :0 local /usr/X11R6/bin/X :0 vt07 També són fitxers rellevants per a l'inici: La secció [X-*-Core] en tdmrc Configuració: /etc/X11/xdm/Xsetup Els usuaris introdueixen el nom d'usuari i la contrasenya Inici: /etc/X11/xdm/Xstartup - com a root Sessió: /etc/X11/xdm/Xsession - inicia la sessió com a usuari = Per a una sessió KDE: kde o starttde = Si està present ~/.xsession o ~/.xinitrc Tornar a inciar: /etc/X11/xdm/Xreset - després de finalitzar la sessió L'script d'inici de &kde;: <command >starttde</command > La seqüència d'inici de &kde; comença amb l'script starttde. En la majoria de casos aquest script crida al gestor de la pantalla (&tdm;) una vegada que l'usuari s'ha autenticat. Hi ha dues línies molt importants en l'script starttde: LD_BIND_NOW=true tdeinit +kcminit +knotify i kwrapper ksmserver $TDEWM La primera línia inicia el procés mestre tdeinit. El procés mestre tdeinit s'usa per iniciar tots els altres processos de &kde;. Apareix en la sortida de ps com a tdeinit: Running.... Els arguments després de tdeinit són els noms dels processos que s'iniciaràn. + indica que tdeinit necessita esperar a que el procés finalitzi. tdeinit també inicia dcopserver, tdelauncher i kded. La segona de les dos línies indica a tdeinit que iniciï el procés de gestió de la sessió ksmserver. El gestor de la sessió determina el temps de vida d'aquesta. Quan aquest procés surt, l'usuari ha sortit. Processos en segon pla Tots els serveis en segon pla de &kde; tenen un ús específic: A diferència del sistema de dimonis no són compartits pels usuaris. Com són únics per a cada usuari també són únics per a cada pantalla del servidor X. Els processos són: dcopserver Comunicació amb l'escriptori kded Dimoni de servei genèric. Inicien Sycoca per actualitzar la base de dades sempre que sigui necessari kcminit Inicialització de servei Mireu per obtenir més informació. tdelauncher Carrega el programa (aquest no és el diàleg &Alt;F2 !). Mireu per obtenir més informació. knotify Notificacions d'usuari. Mireu per obtenir més informació. ksmserver Gestió de la sessió Mireu per obtenir més informació. <command >tdeinit</command > tdeinit s'usa per iniciar tots els demés programes de &kde;. tdeinit pot iniciar tant fitxers de programa binari així com mòduls carregables per tdeinit (els KLM). Els KLM funcionen de manera similar als fitxers de programa binari però es poden iniciar d'una forma més eficient. Els KLM es troben en $TDEDIR/lib/kde3 L'inconvenient dels programes iniciats d'aquesta manera és que apareixeran com a tdeinit en la sortida de top i ps. Useu top o ps per al nom actual del programa: %ps waba 23184 0.2 2.1 23428 11124 ? S 21:41 0:00 tdeinit: Running... waba 23187 0.1 2.1 23200 11124 ? S 21:41 0:00 tdeinit: dcopserver --nosid waba 23189 0.2 2.4 25136 12496 ? S 21:41 0:00 tdeinit: tdelauncher waba 23192 0.7 2.8 25596 14772 ? S 21:41 0:00 tdeinit: kded waba 23203 0.8 3.4 31516 17892 ? S 21:41 0:00 tdeinit: knotify tdeinit:Runing... identifica el procés mestre tdeinit. Els d'altres processos llistats són els programes iniciats com als KLM. Quan tdeinit és executat per primera vegada iniciarà dcopserver, tdelauncher i kded, així com aquells programes addicionals especificats a la seva línia de comandaments en el script starttde, normalment kcminit i knotify. <command >dcopserver</command > dcopserver és un dimoni que proveeix capacitats per a permetre la comunicació entre processos (&DCOP;) per a totes les aplicacions &kde;. Les capacitats &DCOP; són accessibles des de l'intèrpret de comandaments a través del comandament dcop. &DCOP; és essencial per a totes les aplicacions &kde;. Alguns fitxers relacionats: $HOME/.DCOPserver_$HOSTNAME_$DISPLAY &pex;, .DCOPserver_linux__0. Controlat per $DCOPAUTHORITY /tmp/.ICE-unix/dcopnúmero-pid &pex;, dcop7634-1069677856. Aquest és el fitxer al que apunta DCOPserver. $HOME/.ICEauthority Autorització de la informació controlada per $ICEAUTHORITY kcminit kcminit executa els serveis d'inicialització durant l'arrencada. Els serveis inicialitzats s'especifiquen en els fitxers .desktop de les aplicacions o serveis mitjançant la línia X-TDE-Init: [Desktop Entry] Encoding=UTF-8 Exec=tdecmshell energy Icon=energy_star Type=Application X-TDE-Library=energy X-TDE-Init=energy La inicialització de serveis es sol emprar per a inicialitzar maquinari basat en les configuracions especifiques de l'usuari. kcminit es pot usar per a mostrar tots els serveis inicialitzats i kcminit servei es pot usar per executar un determinat servei de forma explícita. Això pot resultar molt pràctic per esbrinar problemes d'inici. <command >tdelauncher</command > tdelauncher es un dimoni responsable del servei d'activació en el &kde;. Opera en connexió directa amb el procés mestre tdeinit per iniciar nous processos. Les aplicacions &kde; es comuniquen amb tdelauncher a través de &DCOP; per iniciar noves aplicacions o serveis. El més conegut és el missatge d'error: TDELauncher could not be reached via DCOP el qual indica un seriós problema amb dcopserver o que tdelauncher ha petat. tdelauncher es pot tornar a iniciar amb tdeinit des d'una finestra de consola. Abans de fer-ho assegureu-vos que $HOME, $DISPLAY i la resta de les variables $TDEDIR(S) estan correctament configurades! <command >knotify</command > La principal tasca de knotify és transmetre les notificacions de so al servidor de so, a la vegada que proveeix mètodes de notificació alternatius. KSMServer ksmserver és el gestor de sessions de &kde;. A l'iniciar-se el gestor de sessions s'inicien les aplicacions auto-arrencables i es restauren les aplicacions de la sessió anterior. Les aplicacions auto-arrencables són les que són indicades pels fitxers .desktop en el directori $TDEDIR/share/autostart. L'auto-arrencada d'una aplicació pot estar condicionada per l'entrada X-TDE-autostart-condition en el fitxer .desktop. Per exemple el fitxer ktip.desktop conté: X-TDE-autostart-condition=ktiprc:TipOfDay:RunOnStart:true Això vol dir que el fitxer de configuració ktiprc serà marcat amb una entrada RunOnStart en la secció [TipOfDay]. Si no es troba l'entrada, s'assumeix el valor true, el qual vol dir que ktip és una de les aplicacions que per omissió seran auto-arrencades. Algunes de les aplicacions auto-arrencables per ksmserver són: kdesktop L'escriptori de &kde; &kicker; El plafó de &kde; ktip Un programa amb el consell del dia kwrited Una utilitat per a rebre missatges del sistema enviats a l'usuari &klipper; Una utilitat de portapapers que s'ancora en el plafó kalarm Una utilitat que us avisa quan es produeix una cita kdesktop inicia aquelles aplicacions desades en $TDEHOME/Autostart. kdesktop obrirà automàticament qualsevol fitxer desat en aquest directori incloguen documents, fitxers binaris o aplicacions en forma de fitxers .desktop. El gestor de sessió de &kde; també restaura una de les sessions anteriors. Una sessió conté una col·lecció d'aplicacions així com informació especifica de l'aplicació que reflexa l'estat de l'aplicació en el moment en que es va desar la sessió. Les sessions es desen en el fitxer de configuració ksmserverrc que conté referències a la informació especifica de l'estat d'una aplicació. La informació especifica de l'estat d'una aplicació es desa en $TDEHOME/share/config/session. La informació de l'estat de &twin; conté la col·locació de les finestres de totes les aplicacions de la sessió. Variables d'entorn Algunes variables d'entorn importants usades per &kde;: $TDEDIR Ha d'estar establerta si TDEDIRS no ho està i haurà d'apuntar al directori arrel de l'arbre de la instal·lació de &kde;. Permet al &kde; trobar les seves dades com ara les icones, menús i biblioteques. $TDEDIRS Solapa TDEDIR i us permet especificar múltiples directoris en els que &kde; cercarà les seves dades. És pràctic si voleu o teniu instal·lats alguns programes en un lloc diferent que a la resta de &kde;. $TDEHOMESi no està establerta, &kde; usa ~/.trinity com a directori en el que es desaran dades personals. $TDEROOTHOMESi no està establerta, &kde; usa ~root/.trinity com a directori en el que es desaran les dades personals del root. S'ha introduït per evitar que &kde; sobreescrigui accidentalment dades dels usuaris amb els permisos de root quan l'usuari executa un programa de &kde; després de convertir-se en root amb el comandament su. $TDEWMSi la variable d'entorn TDEWM ha estat assignada, llavores el seu contingut serà usat com al gestor de finestres de &kde; dins del script starttde en comptes de &twin;. $TDE_LANGSolapa la configuració de l'idioma de &kde;, &pex;, TDE_LANG=fr kprograma & inicia un programa amb la traducció francesa si els fitxers necessaris estan instal·lats. $TDE_MULTIHEADSi el contingut d'aquesta variable és true indica que &kde; s'executa en un sistema amb múltiples monitors. $TDE_FORK_SLAVES (&kde; 3.2.3) Estableix aquesta variable per a generar TDEIO-slaves directament des del mateix procés de l'aplicació. Per omissió els TDEIO-slaves són generats usant tdelauncher/tdeinit. Aquesta opció és pràctica si el TDEIO-slave ha d'executar-se en el mateix entorn que l'aplicació. Aquest pot ser el cas de Clearcase. $TDE_HOME_READONLY Establir aquesta variable per indicar si el vostre directori d'inici està muntat en tan sols lectura. $TDE_NO_IPV6(Des de &kde; 3.2.3) - Establir aquesta variable per a deshabilitar el suport IPv6 i les recerques DNS IPv6. $TDE_IS_PRELINKED(Des de &kde; 3.2) - Establir aquesta variable per indicar que heu pre-enllaçat els vostres binaris i biblioteques &kde;. Això pot tancar tdeinit. $TDE_UTF8_FILENAMESSi aquesta aquesta variable d'entorn està establerta, &kde; assumeix que tots els noms de fitxer estan codificats en UTF-8 independentment de la codificació local. $TDE_FULL_SESSION(Des de &kde; 3.2) &kde; estableix automàticament a l'arrencar, &pex;, s'usa en &konqueror; per a saber si quan es tanqui s'hauria de mantenir-se en memòria per a un ús futur. Si no està establerta, &konqueror; finalitzarà després que es tanqui (&pex;, &tdesu; ho fa, també és molt útil per a la depuració). $TDESYCOCAUs permet especificar la ruta i el nom de fitxer del fitxer cau del sistema de configuració generat pel &kde;. $TDETMPUs permet especificar una altra ruta diferent que /tmp per a que &kde; hi desi els fitxers temporals. $TDEVARTMPUs permet especificar una altra ruta diferent que /var/tmp per a que &kde; hi desi els seus fitxers de variable. $XDG_DATA_HOME(Des de &kde; 3.2) Defineix el directori base relatiu al lloc en el que s'haurien de desar els fitxers de dades específiques de l'usuari. Per omissió és $HOME/.local/share $XDG_DATA_DIRS(Des de &kde; 3.2) Defineix l'ordre de preferència en l'assignació de directoris base per a la recerca de fitxers de dades addicionals al directori base $XDG_DATA_HOME. Per omissió és /usr/local/share/:/usr/share/ &kde; afegeix localitzacions per a $TDEDIRS així com perfils. S'usa per als fitxers de menú .desktop i .directory. Els fitxers .desktop estan en $XDG_DATA_DIRS/applications. Els fitxers .directory estan sota $XDG_DATA_DIRS/desktop-directories. $XDG_CONFIG_HOME(&kde; 3.2) - Defineix el directori base relatiu en el que s'han de desar els fitxers de configuració específics de l'usuari. Per omissió és $HOME/.config. $XDG_CONFIG_DIRS(&kde; 3.2) - Defineix l'ordre de preferència dels directoris base per a cercar fitxers de configuració addicionals al directori base $XDG_CONFIG_HOME. Per omissió és /etc/xdg. &kde; també afegeix les localitzacions i perfils de $TDEDIRS. Emprat per les descripcions de .menu en $XDG_CONFIG_DIRS/menus. El misteriós tdeinit tdeinit és usat per iniciar tots els demés programes de &kde;. tdeinit pot iniciar tant fitxers de programes binaris com mòduls carregables per tdeinit (els KLM). Els KLM funcionen de manera similar als fitxers de programes binaris però es poden iniciar d'una forma més eficient. Els KLM es troben en $TDEDIR/lib/kde3. L'inconvenient dels programes iniciats d'aquesta manera és que apareixeran com a tdeinit en la sortida de top i ps. Useu top o ps per al nom actual del programa: % ps aux | grep bastian bastian 26061 0.0 2.2 24284 11492 ? S 21:27 0:00 tdeinit: Running... bastian 26064 0.0 2.2 24036 11524 ? S 21:27 0:00 tdeinit: dcopserver bastian 26066 0.1 2.5 26056 12988 ? S 21:27 0:00 tdeinit: tdelauncher bastian 26069 0.4 3.2 27356 16744 ? S 21:27 0:00 tdeinit: kded bastian 26161 0.2 2.7 25344 14096 ? S 21:27 0:00 tdeinit: ksmserver bastian 26179 1.1 3.4 29716 17812 ? S 21:27 0:00 tdeinit: kicker bastian 26192 0.4 3.0 26776 15452 ? S 21:27 0:00 tdeinit: klipper bastian 26195 1.0 3.5 29200 18368 ? S 21:27 0:00 tdeinit: kdesktop Com és possible que hageu sentit a dir, això disposa d'una altra efecte, fent dificultós el matar un procés que estigui causant un problema: % killall kdesktop kdesktop: no process killed Podeu estar intentant usar killall tdeinit, però el matar tots els processos de tdeinit provocarà que es tanqui tot el &kde;. En efecte. Destrucció total! Hi ha dues solucions simples a això: % kdekillall kdesktop o millor l'antic % kill 26195 kdekillall forma part del paquet SDK de &kde;. Personalitzar el &kde; Icones de l'escriptori &kde; usa diversos tipus d'icones: Documents Enllaços a llocs web (usant fitxers .desktop) Enllaços a aplicacions (usant fitxers .desktop) Dispositius - Discs, particions i perifèrics: Usar explícitament fitxers .desktop Automàticament mitjançant devices:// io-slave Específics del venedor (&pex;, El meu ordinador amb &SuSE;). Llocs web Enllaços als llocs web usant fitxers .desktop: Crea nouFitxerEnllaç a la localització (URL). Canvieu la icona usant els diàlegs de Propietats. El fitxer .desktop resultant serà: [Desktop Entry] Encoding=UTF-8 Icon=/opt/kde3/share/apps/kdesktop/pics/ksslogo.png Type=Link URL=http://www.kde.org/ Aplicacions Enllaçar aplicacions usant fitxers .desktop: Crea nouFitxerEnllaç a aplicació. Podeu proporcionar els vostres propis detalls. Arrossegar des del menú &kde;: Tant copiar com enllaçar (crear un enllaç simbòlic) és molt fàcil [Desktop Entry] Encoding=UTF-8 GenericName=IRC Client GenericName[af]=Irc Kliët GenericName[de]=IRC Programm ... GenericName[zu]=Umthengi we IRC SwallowExec= Name=KSirc Name[af]=Ksirc Name[de]=KSirc ... Informació de resum Descripció genèrica traduïda, no s'usa a l'escriptori Heretat, es pot eliminar Nombre traduït tal i com apareixerà a l'escriptori Icones de l'escriptori ... Name[zu]=Ksirc MimeType= Exec=ksirc %i %m Icon=ksirc TerminalOptions= Path= Type=Application Terminal=0 X-TDE-StartupNotify=true X-DCOP-ServiceType=Multi Categories=Qt;TDE;Network Suporta tipus &MIME;, no s'usa a l'escriptori La línia de comandaments a executar La icona, que s'obté a partir del tema d'icona o la ruta completa Tan sols s'usa si és necessari el terminal Directori de treball per al comandament Més informació de resum Useu true si es necessita terminal, aplicació de text Mostra el cursor saltarí, deshabilitar si no funciona. S'ha iniciat l'aplicació correctament? Eliminar si no funciona Categories per al menú &kde;, no usat a l'escriptori L'opció <varname >Exec</varname > en els fitxers <literal role="extension" >.desktop</literal > Junt al comandament, podeu col·locar alguns ítems que seran substituïts amb els valors actuals amb els que s'està executant el programa actual: %f Un únic nom de fitxer; usat quan es deixa anar el fitxer sobre una icona, o amb les associacions de fitxer. %F Una llista de fitxers; usat per aplicacions que poden obrir diversos fitxers locals a la vegada. %u Una única &URL; senzilla: Si l'aplicació pot manejar, &pex;, les &URL; &FTP; o &HTTP; per si mateixa, d'altra manera usarà el &kde;. %U Una llista de les &URL;; primer descarregarà el fitxer i passarà un fitxer local a l'aplicació (!!) %d La carpeta del fitxer a obrir; d'utilitat si l'aplicació necessita tenir un fitxer en el directori de treball actual. %D Una llista de carpetes, no és gaire pràctic. %i La icona; l'opció ; l'aplicació de &kde; usarà la icona de la línia Icon= en la barra de tasques. %m La mini icona; heretada. %c L'etiqueta; l'opció ; l'aplicació &kde; usarà el nom des de la línia Name= en la barra de tasques. Exemples: Línia Exec Comandament executat ksirc %iksirc --icon ksirc cd %d; kedit $(basename %f)cd /tmp; kedit fitxer.txt Dispositius Enllaços als dispositius usant fitxers .desktop: Crea nou -> Dispositiu A on es defineix Alguns llocs a on definir les icones de l'escriptori: ~/Desktop: copiat des de /etc/skel/Desktop. $TDEDIR/apps/kdesktop/Desktop (fusionat) $TDEDIR/apps/kdesktop/DesktopLinks (copiat) Icones de dispositiu (fusionats dinàmicament) La distribució SUSE Linux copia algunes icones en starttde.theme des de /opt/kde3/share/config/SuSE/default/ El menú &kde; Com funciona En &kde; 3.2 s'introdueix un format de menú comú en http://freedesktop.org/Standards/menu-spec/. Abans de &kde; 3.2: Estructura de directoris sota share/applnk La estructura de directoris representa la estructura de menús Cada fitxer .desktop representa una única aplicació És dificultós el tornar a col·locar la estructura en &kde; 3.2 per tant el nou format és: Defineix la estructura en un únic fitxer .menu Està basat en categories es compartit per GNOME i &kde; Suporta l'estil de menús applnk Exemple de applications.menu: <Menu> <Name>Office</Name> <Directory>suse-office.directory</Directory> <Include> <Filename>Acrobat Reader.desktop</Filename> <Filename>tde-kpresenter.desktop</Filename> <Filename>tde-kword.desktop</Filename> </Include> <Menu> Entrada de menú amb 3 aplicacions: /usr/share/applications/Acrobat Reader.desktop /opt/kde3/share/applications/kde/kpresenter.desktop /opt/kde3/share/applications/kde/kword.desktop A on es desen? Els fitxers .menu descriuen la estructura del menú. Els fitxers es desen en $TDEDIR/etc/xdg/menus i /etc/xdg/menus. Aquí es desa tota la estructura del menú i està controlada per $XDB_CONFIG_DIRS. $HOME/.config/menus desa els canvis de la estructura del menú específics de l'usuari i està control.lat per $XDG_CONFIG_HOME. Per a més informació, mireu http://www.freedesktop.org/Standards/basedir-spec. Els fitxers .desktop descriuen les aplicacions i es desen en: $TDEDIR/share/applications, /usr/share/applications, /usr/local/share/applications. Aquí es troben els fitxers .desktop de les aplicacions del sistema, que són control.lades per $XDG_DATA_DIRS. $HOME/.local/applications conté fitxers .desktop específics de cada usuari i els seus canvis. Són controlats per $XDG_DATA_HOME. Per a més informació, mireu http://www.freedesktop.org/Standards/basedir-spec Els fitxers .directory descriuen els submenús i es desen en: $TDEDIR/share/desktop-directories, /usr/share/desktop-directories, /usr/local/share/desktop-directories. Aquests són els fitxers .directory que contenen el menú de tot el sistema, i són controlats per $XDG_DATA_DIRS. Els canvis específics de l'usuari són desats en $HOME/.local/desktop-directories. Aquests són controlats per $XDG_DATA_HOME. Per a més informació, mireu http://www.freedesktop.org/Standards/basedir-spec Exemple de applications.menu: <Menu> <Name>Art</Name> <Directory>suse-edutainment-art.directory</Directory> <Include> <Category>X-SuSE-Art</Category> </Include> </Menu> Art és el nom intern per a aquest menú. suse-edutainment-art.directory defineix el nom i la icona per aquest menú, i el menú inclou totes les aplicacions que tenen X-SuSE-Art llistat com a categoria, &pex;: Categories=Qt;TDE;Education;X-SuSE-Art suse-edutainment-art.directory defineix el nom i la icona per aquest menú: [Desktop Entry] Name=Art and Culture Icon=kcmsystem Trencacolls comuns Les aplicacions que no s'inclouen en el menú no existeixen per a la resta d'aplicacions o per a les associacions de fitxer: Si s'elimina una aplicació del menú, &kde; assumeix que no la voleu usar. Quan no es volen aplicacions en el menú, poden col·locar-se en un menú .hidden (ocult) o en un menú dedicat amb NoDisplay=true en el fitxer .directory Menús essencials $TDEDIR/etc/xdg/menus/applications-merged/ conté kde-essential.menu que inclou alguns menús essencials que no es mostren en el menú &kde; per si mateixos: El centre de control conté un menú Preferències que està ocult, definit per kde-settings.menu i amb icones i noms definits per kde-settings.directory El centre d'informació conté un menú Informació que està ocult, definit per kde-information.menu i amb icones i noms definits per kde-information.directory. Els salvapantalles contenen un menú Sistema/Salvapantalles que està ocult, definit per kde-screensavers.menu i amb icones i noms establerts per kde-screensavers.directory. $TDEDIR/share/desktop-directories/kde-system-screensavers.directory conté: NoDisplay=true Menús a l'estil antic &kde; continua suportant els menús a l'estil antic que és definit per l'estructura de directoris de $TDEDIR/share/applnk (tot el sistema) i $HOME/.trinity/share/applnk (específic de l'usuari). Es poden veure a menys que el fitxer .desktop tingui una línia Categories=. En aquest cas la categoria determinarà la localització en el menú. <application >KSycoca</application > KSycoca desa a la memòria cau la estructura de menús i informació sobre totes les aplicacions. Podeu reconstruir la base de dades amb tdebuildsycoca. La base de dades que es construeix està en /var/tmp/tdecache-${USER}/tdesycoca. És usada automàticament per KDED, comprovada durant l'accés a &kde;, i KDED cerca canvis mentre s'està accedint. Per a deshabilitar la recerca de canvis (pot no funcionar sobre NFS) afegiu el següent a kdedrc: [General] CheckSycoca=false Per a forçar la regeneració, executeu touch $TDEDIR/share/services/update_tdesycoca. &kmenuedit; L'objectiu de &kmenuedit; és ajudar a un usuari amb la configuració. Els canvis en la estructura del menú són desats a ~/.config/menus/applications-kmenuedit.menu, els canvis de les aplicacions són desades en ~/.local/share/applications/ i els canvis dels submenús (icona, nom) són desats en ~/.local/share/desktop-directories/. L'eina d'administració KIOSK usa &kmenuedit; i copia els canvis anteriors en les localitzacions de perfil o de tot el sistema. El plafó de &kde; El plafó de &kde; també conegut com a &kicker;. És modular i consisteix dels següents components: Applets Botons d'aplicació Botons especials Per omissió, el plafó conté els següents applets: El paginador - mostra els escriptoris virtuals Barra de tasques Safata del sistema Rellotge. i els següents botons especials: El menú &kde; Botó de l'escriptori També s'han afegit diversos botons d'aplicació, es permeten espais: Botó d'inici Botó del fullejador Botó de KMail Associacions de fitxer Les associacions de fitxer associen un tipus de fitxer amb una aplicació o aplicacions. El tipus de fitxer ve determinat pel seu tipus &MIME;. Els tipus &MIME; coneguts pel &kde; es desen en $TDEDIR/share/mimelnk i els fitxers .desktop de les aplicacions contenen una llista dels tipus &MIME; suportats per aquesta aplicació. kview.desktop: MimeType=image/gif;image/x-xpm;image/x-xbm;image/jpeg; image/x-bmp;image/png;image/x-ico;image/x-portable-bitmap; image/x-portable-pixmap;image/x-portable-greymap; image/tiff;image/jp2 kuickshow.desktop: MimeType=image/gif;image/x-xpm;image/x-xbm;image/jpeg; image/png;image/tiff;image/x-bmp;image/x-psd;image/x-eim; image/x-portable-bitmap;image/x-portable-pixmap; image/x-portable-greymap Ambdós poden obrir image/gif, llavores. Quin s'usarà per obrir un fitxer .gif? L'aplicació amb la preferència més alta! kview.desktop conté InitialPreference=3 a on kuickshow.desktop conté InitialPreference=6 De manera que, &kuickshow; serà usat per obrir els fitxers .gif. Com podem aconseguir que s'usi &kview; per omissió? Un usuari pot canviar l'associació de fitxers en el ¢recontrol;. Aquests canvis es desen en $HOME/.trinity/share/config/profilerc. Per usar la mateixa configuració per a varis usuaris, deseu aquesta configuració en el directori del perfil d'usuari o en el directori de configuració global de &kde; si el voleu usar com a per omissió per a múltiples usuaris. Blocats de seguretat al &kde; Com funciona - El bàsic &kde; incorpora característiques de blocats de seguretat que es centren en les següents opcions: Crear opcions de configuració immutables Restricció d'accions específiques Restricció de l'accés a certes &URL; Restricció d'accés a certs mòduls de configuració Opcions de configuració immutables Blocats de seguretat al &kde; Les opcions immutables permeten a l'administrador del sistema proveir una configuració per omissió que no pugui ser canviada per l'usuari. Les opcions de configuració preexistents de l'usuari seran ignorades una vegada que aquesta opció s'hagi tornat immutable. Les opcions es poden controlar per a cada entrada base, per grups d'entrades o un fitxer a partir del fitxer base. Si un fitxer o grup és immutable, totes les opcions de configuració per aquest fitxer o grup romandran immutables, fins i tot si l'administrador del sistema no n'ha proveït una per omissió. El suport en les aplicacions per a les opcions immutables poden variar d'unes a altres. Encara que l'usuari no sigui capaç de fer canvis permanents a les opcions de configuració immutable, a l'usuari se li presentarà una opció en la interfície d'usuari per a realitzar dit canvi. Restricció d'accions Les aplicacions &kde; estan construïdes sota el concepte acció. Les accions es poden activar de diverses maneres, habitualment a través de la barra de menú, de la barra d'eines o d'una drecera de teclat. Desa document és un exemple d'una acció. Si coneixeu el nom intern de l'acció és possible restringir-la. Quan una acció està restringida no apareixerà en la barra de menús o en la barra d'eines. El nom interno per a l'acció Desa document és . La infraestructura de blocat de seguretat també proveeix un conjunt de restriccions més abstractes que es poden usar per a deshabilitar la funcionalitat no coberta per una única acció. Un exemple és la restricció que deshabilita totes les funcionalitats que ofereix a l'usuari l'accés a un intèrpret de comandaments &UNIX;. Restricció a l'usuari de l'accés a un intèrpret de comandaments Per a prevenir que un usuari pugui accedir a l'intèrpret de comandaments podem restringir l'acció afegint el següent a kdeglobals: [KDE Action Restrictions] shell_access=false Atès que això afecta al menú &kde; i a les aplicacions disponibles, haurem de forçar l'actualització de la base de dades sycoca: touch $TDEDIR/share/services/update_tdesycoca Ara torneu a accedir al &kde; i verifiqueu els següents punts: El &kmenu; En &konqueror;, EinesObre terminal L'execució d'un comandament &Alt;F2 Tota la documentació sobre les accions disponibles es poden trobar en http://www.kde.org/areas/sysadmin/ Algunes de les accions més interessants són les llistades a sota: L'opció Configura del menú Arranjament L'opció Informe d'errors del menú Ajuda El menú del &BDR; sobre l'escriptori. El menú del &BDR; sobre el plafó. Oculta totes les accions o aplicacions que requereixen accés de root. Oculta totes les accions o aplicacions que proveeixen accés a l'intèrpret de comandaments. Deshabilita l'opció per a seleccionar el sistema d'impressió (motor). Indica si l'usuari pot blocar la pantalla Indica si l'usuari pot iniciar una segona sessió del sistema X (mireu també &tdm;) Indica si estan permesos els salvapantalles OpenGL per a l'usuari. Permet als salvapantalles no ocultar tota la pantalla Restriccions a les &URL; Hi ha tres tipus de restriccions que es poden aplicar a les &URL;: list Per a controlar si està permès el llistat d'un directori. open Per a controlar si es poden obrir certes &URL; Redirect Per a controlar si una &URL; en pot obrir una altra, encara que sigui automàticament o a través d'hiperenllaços. Les regles són comprovades en l'ordre en que han estat definides. L'última regla que és aplicable a una &URL; defineix si es pot accedir a la &URL;. Les següents regles deshabiliten obrir les &URL; http i https externes a .nostra-empresa.com: [KDE URL Restrictions] rule_count=2 rule_1=open,,,,http,,,false rule_2=open,,,,http,*.nostra-empresa.com,,true Les primeres quatre comes salten a la selecció sobre la que es van a establir els criteris que originen la &URL;. Aquesta part tan sols serà necessària amb les regles de tipus redirect. prohibeix obrir qualsevol &URL; http o https permet obrir qualsevol &URL; http i https en el domini .nostra-empresa.com. Tingueu present que el joquer * tan sols està permès al començament d'un domini. Les següents regles fan que un usuari no pugui navegar pels directoris del sistema de fitxers local que estiguin fora del seu directori $HOME: [KDE URL Restrictions] rule_count=2 rule_1=list,,,,file,,,false rule_2=list,,,,file,,$HOME,true prohibeix llistar qualsevol directori local permet llistar els directoris que estan sota el vostre directori $HOME. $HOME i $TMP són valors especials que indiquen els directoris inici dels usuaris i el directori temporal de &kde; per als usuaris, &pex;, /tmp/tde-bastian Les següents regles fan que un usuari no pugui obrir fitxers locals que estiguin fora del seu directori $HOME: [KDE URL Restrictions] rule_count=3 rule_1=open,,,,file,,,false rule_2=open,,,,file,,$HOME,true rule_3=open,,,,file,,$TMP,true prohibeix obrir qualsevol fitxer local permet obrir fitxers que estiguin sota el vostre directori $HOME. permet obrir fitxers en el directori temporal de &kde; de l'usuari. Això és necessari per a certes aplicacions &kde; que primer descarreguen el fitxer o document en un directori temporal i després l'obren en una aplicació. L'opció de redirecció controla si els documents de certs llocs poden fer referència, encara que sigui de forma automàtica o manual a través d'hiperenllaços, a una altra localització. Hi ha presents un conjunt de regles per omissió com a mesura de seguretat general. Per exemple, els documents localitzats sobre la Internet no poden fer referència a documents desats localment. Per exemple, si volem donar al servidor intranet www.meva-empresa.com la possibilitat de fer referència a fitxers locals haurem d'afegir la següent regla: [KDE URL Restrictions] rule_count=1 rule_1=redirect,http,www.meva-empresa.com,,file,,,true En comptes de llistar un protocol pel nom, també és possible especificar un grup de protocols. Per a fer això s'han definit els següents grups: :local Protocols que accedeixen de forma local a la informació desada, per exemple file:/, man:/, fonts:/, floppy:/ :internet Protocols comuns a Internet com http i ftp La informació sobre aquests protocols es desa en fitxers *.protocol que són desats en $TDEDIR/share/services. L'entrada = defineix el grup del qual forma part el protocol: grep $TDEDIR/share/services/*.protocol Regles generals: Els protocols :local poden fer referència a qualsevol altra protocol Sempre es permet fer referència a un protocol :internet No tots els protocols formen part d'un grup, fish:/ per exemple. Mòduls de configuració &kde; te mòduls de configuració per a configurar varis aspectes de l'entorn &kde;. Els mòduls de configuració apareixen en el centre de control, en el diàleg de configuració d'una aplicació o en ambdós. El mòdul de configuració de l'intermediari es troba en el centre de control però també forma part del diàleg Configura Konqueror en &konqueror; Els mòduls de configuració individual es poden iniciar amb tdecmshell mòdul Per iniciar el mòdul de l'intermediari useu: tdecmshell tde-proxy.desktop tdecmshell proxy No totes les aplicacions usen mòduls de configuració, i el diàleg de configuració forma part integral de la pròpia aplicació. Tots els mòduls de configuració són parlant estrictament part del menú &kde;. Els mòduls que són visibles en el centre de control normalment tenen un fitxer .desktop en $TDEDIR/share/applications/kde i estan ordenats en el menú ocult Settings-Modules en kde-settings.menu, inclòs en kde-essential.menu. tdebuildsycoca 2> /dev/null | grep Settings-Modules Els mòduls específics de les aplicacions solen tenir un fitxer .desktop en $TDEDIR/share/applnk/.hidden que corresponen al menú ocult .hidden, inclòs com a un resultat de <KDELegacyDirs/>. tdebuildsycoca 2> /dev/null | grep .hidden En &kde; 3.3 és possible editar el centre de control amb kcontroledit. kcontroledit funciona de forma similar a kmenuedit, fent els canvis tan sols per a un usuari. Useu kiosktool per a fer els canvis per a tothom. Els mòduls de configuració individual poden ser deshabilitats afegint el següent a kdeglobals: [KDE Control Module Restrictions] id-mòdul=false Per exemple, per a deshabilitar el mòdul de l'intermediari useu: [KDE Control Module Restrictions] tde-proxy.desktop=false Marqueu el centre de control i el diàleg Configura Konqueror si la configuració de l'intermediari encara és allí. L'administració ràpida Compartir l'escriptori remot Compartir l'escriptori remot permet als usuaris veure i de forma opcional controlar l'escriptori de l'usuari actual. L'usuari remot necessitarà enviar una invitació, i si és possible crear una contrasenya per a protegir-la. És ideal per a equips de suport tècnic o per a administradores que requereixin obtenir accés als escriptoris dels usuaris amb la finalitat de resoldre un problema o guiar a l'usuari a través d'un procediment. Compartir l'escriptori remot involucra a dues aplicacions: &krfb; (memòria cau del marc remot de &kde;, un servidor VNC) i &krdc; (connexió a l'escriptori remot de &kde;, un client VNC). &krfb; pot ser usat per qualsevol usuari per a crear i gestionar invitacions. Les invitacions permetran al destinatari, usant la contrasenya, connectar-se al vostre escriptori. Per omissió són vàlides per a una única connexió, i expiren després d'una hora si no són usades. Les connexions entrants són manejades pel mòdul kinetd kded. Podeu usar el comandament dcop kded kinetd services per a veure si està en execució. Per omissió &krfb; espera connexions sobre el port 5900. Quan es fa una connexió entrant, apareix un diàleg per a demanar confirmació a l'usuari actual. &kde; DIY - Construir les vostres pròpies eines DCOP El protocol de comunicació de l'escriptori, DCOP (Desktop COmmunication Protocol), és un mecanisme lleuger per a la comunicació entre processos. DCOP permet usar la interacció entre programes que s'estiguin executant. &kde; proporciona dos programes per a usar DCOP: dcop, un programa de línia de comandaments, i kdcop, un programa amb una IGU. Algunes notes sobre l'ús de dcop: dcop [opcions] [aplicació [objecte [funció [arg1] [arg2] ... ] ] ] Aquestes aplicacions poden obrir més d'una finestra a la vegada que seran llistades com a <aplicació>-PID Tots els arguments són sensibles a majúscules i minúscules. setFullScreen i setfullscreen són dues funcions diferents. La marca d'expressió regular * es pot usar en l'aplicació i en els arguments objecte. % dcop konqueror-16006 konsole-8954 Alguns exemples de comandament i les seves corresponents sortides són les següents: % dcop konsole-8954 Una &konsole; s'està executant amb un PID de 8954. % dcop KBookmarkManager-.../share/apps/tdefile/bookmarks.xml KBookmarkManager-.../share/apps/konqueror/bookmarks.xml KBookmarkNotifier KDebug MainApplication-Interface konsole (default) konsole-mainwindow#1 tdesycoca session-1 session-2 session-3 session-4 Aquí podeu veure que hi ha quatre sessions executant-se. % dcop QCStringList interfaces() QCStringList functions() int sessionCount() QString currentSession() QString newSession() QString newSession(QString type) QString sessionId(int position) void activateSession(QString sessionId) void nextSession() void prevSession() void moveSessionLeft() void moveSessionRight() bool fullScreen() void setFullScreen(bool on) ASYNC reparseConfiguration() Aquí estan les opcions per al programa principal &konsole;. % dcop QCStringList interfaces() QCStringList functions() bool closeSession() bool sendSignal(int signal) void clearHistory() void renameSession(QString name) QString sessionName() int sessionPID() QString schema() void setSchema(QString schema) QString encoding() void setEncoding(QString encoding) QString keytab() void setKeytab(QString keyboard) QSize size() void setSize(QSize size) Aquestes són les opcions per a la primera sessió, session-1. % dcop true Això estableix que &konsole; sigui mostrat a pantalla completa. Quan s'usa més d'una aplicació/objecte, quina s'hauria d'usar? Li fem una referència? % echo DCOPRef(konsole-7547,konsole) % dcop session-6 % dcopstart konsole-9058 #!/bin/sh konsole=$(dcopstart konsole-script) session=$(dcop $konsole konsole currentSession) dcop $konsole $session renameSession Local session=$(dcop $konsole konsole newSession) dcop $konsole $session renameSession Remote session=$(dcop $konsole konsole newSession) dcop $konsole $session renameSession Code dcop $konsole $session sendSession 'cd /my/work/directory' KDialog &kde; DIY - Crear les vostres pròpies eines Podeu usar els diàlegs de &kde; des dels vostres propis scripts, per a combinar el poder dels scripts a l'intèrpret de comandaments de &UNIX; amb la facilitat d'ús de &kde;. kdialog kdialog La part KDialog del títol es podeu canviar mitjançant l'opció kdialog Desa si es mostra altra vegada en $TDEHOME/share/config/myfile (escrivint en aquest fitxer les següents línies): [Notification Messages] mykey=false En comptes de podeu també usar i , de la forma apropiada. Per exemple, podeu usar kdialog o kdialog . També és possible crear caixes de missatge que accepten si o no com resposta. kdialog echo $? Valor retornat Significat 0Sí, Bé, Continua 1No 2Cancel·la Assegureu-vos de desar el resultat en una variable si no el va a usar directament, el següent comandament omplirà $? amb un valor nou. Podeu usar aquí l'opció de tal manera que recordarà l'elecció i la retornarà les següents vegades sense tornar a mostrar el diàleg. Algunes variacions són: similar a però amb una icona diferent Amb els botons Continua i Cancel·la. Amb els botons , No i Cancel·la. Per exemple: kdialog kdialog El resultat serà imprès a la stdout, per assignar-lo a una variable podeu usar name=$(kdialog --inputbox "Introduïu el vostre nom:" "VostreNom"). L'últim argument és opcional, i s'usa per a omplir amb anterioritat el diàleg. password=$(kdialog ) L'opció no funciona amb o Hi ha dos diàlegs que permeten a l'usuari fer l'elecció des d'una llista: Permet a l'usuari seleccionar un únic ítem des d'una llista. Permet a l'usuari escollir un o més d'un ítem des d'una llista. city=$(kdialog ) $city serà a, b, c o d. city=$(kdialog ) Madrid i París estan seleccionades amb anterioritat. El resultat amb Madrid i París seleccionades serà "b" "c". Si afegiu l'opció , situareu b i c cadascuna en la seva pròpia línia, fent el resultat més fàcil de processar. file=$(kdialog --getopenfilename $HOME) file=$(kdialog --getopenfilename $HOME "*.png *.jpg|Image Files") file=$(kdialog --getsavefilename $HOME/SaveMe.png) file=$(kdialog --getexistingdirectory $HOME) &groupware-with-kontact;