summaryrefslogtreecommitdiffstats
path: root/tde-i18n-ca/docs/tdebase/userguide/tde-for-admins.docbook
blob: 465d5ee8dd29374af94c840f299f87e2c35b1e0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
<part id="kde-for-administrators">
<partinfo>
<authorgroup>
<author><personname> <firstname>Waldo</firstname> <surname>Bastian</surname> </personname> <email>bastian@kde.org</email> </author>
<othercredit role="reviewer">&Philip.Rodrigues; &Philip.Rodrigues.mail; </othercredit>
</authorgroup>
</partinfo>

<title>&kde; per administradors</title>

<chapter id="kde-internals">
<title>Interioritats de &kde;</title>

<sect1 id="tde-for-admins-overview">
<title>Vista general</title>
<para>per escriure</para>
</sect1>

<sect1 id="directory-layout">
<title>Distribució de directoris</title>

<para>&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. </para>

<para>Per omissió &kde; usa dos arbres de directori:</para>

<itemizedlist>
<listitem><para>Un a nivell de sistema (per exemple <filename class="directory">/opt/kde3</filename>).</para></listitem>
<listitem><para>Un altra a nivell d'usuari en el directori inici de l'usuari (normalment <filename class="directory">~/.trinity</filename>)</para></listitem>
</itemizedlist>

<para>Com administrador del sistema podreu crear arbres addicionals. Es poden usar arbres addicionals per als <link linkend="user-profiles">perfils</link></para>

<informalexample><para>&SuSE; &Linux; per exemple usa:</para>

<itemizedlist>
<listitem><para><filename
class="directory">$<envar>HOME</envar>/.trinity</filename></para></listitem>
<listitem><para><filename class="directory">/opt/kde3</filename> (Aquest és específic per a &SuSE;. D'altres distribucions poden usar <filename class="directory">/usr</filename> o <filename class="directory">/usr/kde3</filename>)</para></listitem>
<listitem><para><filename class="directory">/etc/opt/kde3</filename> (Aquest fou afegit per &SuSE;).</para></listitem>
</itemizedlist>

<para>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: <userinput><command>kiosktool-tdedirs</command> <option>--check</option></userinput></para>
</informalexample>

<para>&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.</para>

<informalexample>
<para>Per obtenir informació sobre escriure el tipus &MIME; <literal>text/plain</literal> es cerquen els següents fitxers:</para>

<itemizedlist>
<listitem><para><filename
class="directory">$<envar>HOME</envar>/.trinity/share/mimelnk/text/plain.desktop</filename></para></listitem>
<listitem><para><filename
class="directory">/opt/kde3/share/mimelnk/text/plain.desktop</filename></para></listitem>
<listitem><para><filename
class="directory">/etc/opt/kde3/share/mimelnk/text/plain.desktop</filename></para></listitem>
</itemizedlist>

<para>Si un usuari fa un canvi, el canvi s'escriu en <filename class="directory">$<envar>HOME</envar>/.trinity/share/mimelnk/text/plain.desktop</filename></para>
</informalexample>

<para>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.</para>

<informalexample><para>Per exemple, si hi ha els dos següents fitxers amb aquests continguts:</para>
<variablelist>
<varlistentry><term><filename>$<envar>HOME</envar>/.trinity/share/config/foobar</filename></term>
<listitem><programlisting>Color=red
Shape=circle
</programlisting>
</listitem>
</varlistentry>

<varlistentry>
<term><filename>/etc/opt/kde3/share/config/foobar</filename></term>
<listitem><programlisting>Color=blue
Position=10,10
</programlisting>
</listitem>
</varlistentry>
</variablelist>

<para>Els fitxers seran fusionats donant el següent resultat:</para>

<programlisting>Color=red
Shape=circle
Position=10,10
</programlisting>

</informalexample>
</sect1>

<sect1 id="specifying-directories">
<title>Especificar directoris</title>

<para>

<segmentedlist>
<segtitle>Variable d'entorn</segtitle>
<segtitle>Exemple(s) de configuració</segtitle>
<segtitle>Comentari</segtitle>

<seglistitem>
<seg><envar>TDEHOME</envar></seg>
<seg><filename class="directory">~/.trinity</filename></seg>
<seg></seg>
</seglistitem>

<seglistitem>
<seg><envar>TDEROOTHOME</envar></seg>
<seg><filename class="directory">/root/.trinity</filename></seg>
<seg>Aquesta variable és diferent de $TDEHOME per evitar que el root escrigui la variable $TDEHOME de l'usuari després d'executar <command>su</command>.</seg>
</seglistitem>

<seglistitem>
<seg><envar>TDEDIR</envar></seg>
<seg><filename class="directory">/opt/kde3</filename>, <filename class="directory">/usr</filename>, <filename class="directory">/usr/kde3</filename></seg>
<seg>Dependrà del venedor. Usat per &kde;2. Si no està establerta, s'usarà la compilació per omissió.</seg>
</seglistitem>

<seglistitem>
<seg><envar>TDEDIRS</envar></seg>
<seg><filename class="directory">/opt/kde3</filename>, <filename class="directory">/usr</filename>, <filename class="directory">/usr/kde3</filename></seg>
<seg>Nou en &kde; 3. Pot llistar múltiples localitzacions separades per dos punts. Si no està establerta, s'usarà $<envar>TDEDIR</envar></seg>
</seglistitem>

</segmentedlist>
</para>
<para>No <emphasis>necessita</emphasis> ser establerta, els valors per omissió funcionen perfectament.</para>
<para>I si es volen executar alternativament &kde; 2 i &kde; 3? $<envar>TDEDIR</envar> apuntarà a &kde; 2 i $<envar>TDEDIRS</envar> a &kde; 3.</para>

<informalexample>
<para>Un membre d'una universitat podria tenir la següent configuració:</para>
<programlisting>TDEHOME='~/.trinity3'
TDEROOTHOME='/root/.trinity3'
TDEDIRS='/opt/kde_staff:/opt/kde3'
</programlisting>

</informalexample>

</sect1>

<sect1 id="user-profiles">
<title>Perfils d'usuari</title>

<para>En l'exemple anterior <filename class="directory">/opt/kde_staff</filename> conté configuracions i aplicacions addicionals per als membres. Els <quote>Perfils d'usuari</quote> us permetran afegir aquest directori tan sols per a uns usuaris i no per a d'altres. Afegiu el següent a <filename>/etc/tderc</filename>:</para>

<programlisting>[Directories-staff]
prefixes=/opt/kde_staff
</programlisting>

<para>Això crea un perfil anomenat<quote>staff</quote> que afegeix <filename class="directory">/opt/kde_staff</filename> a l'arbre de directoris. (Per exemple &SuSE; &Linux; usa <filename>/etc/kde3rc</filename> en lloc de <filename>/etc/tderc</filename>). Ara que hem indicat nombre al perfil hi haurà que assignar als usuaris.</para>

<para>El mapa de perfils d'usuari precisa d'un fitxer que s'ha d'especificar en <filename>/etc/tderc</filename>:</para>

<programlisting>[Directories]
userProfileMapFile=/etc/kde-user-profile
</programlisting>

<para>Ara és possible assignar un perfil basat en el grup &UNIX; dels que forma part.</para> 

<para>Per assignar el perfil staff a tots els usuaris que siguin membres del grup &UNIX; staff_members afegiu el següent a <filename>/etc/kde-user-profile</filename>:</para>

<programlisting>[General]
groups=staff_members
[Groups]
staff_members=staff
</programlisting>

<para>També és possible assignar un perfil a tan sols un usuari:</para>

<programlisting>[Users]
bastian=staff
</programlisting>

</sect1>

<sect1 id="directory-layout-revisited">
<title>Revisió de la distribució de directoris</title>

<para>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 <filename class="directory">$<envar>TDEHOME</envar></filename> però no en qualsevol altra arbre de directoris.</para>

</sect1>

<sect1 id="architecture-specific-directories">
<title>Directoris específics de l'arquitectura</title>

<para>Els directoris específics de l'arquitectura (SO i tipus de CPU):</para>

<variablelist>
<varlistentry>
<term><filename class="directory">bin</filename></term>
<listitem><para>Usat per als executables de &kde;.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">lib</filename></term>
<listitem><para>Usat per les biblioteques de &kde;.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">lib/kde3</filename></term>
<listitem><para>Aquest directori conté components, connectors i d'altres objectes usats per les aplicacions &kde; 3.<replaceable>x</replaceable> que es poden carregar en temps d'execució.</para></listitem> 
</varlistentry>
</variablelist>

</sect1>

<sect1 id="shared-directories">
<title>Directoris compartits</title>

<para>Compartits: No específics d'una arquitectura, poden ser compartits per diferents arquitectures.</para>

<variablelist>
<varlistentry>
<term><filename class="directory">share/applnk</filename></term>
<listitem><para>fitxers <literal role="extension">.desktop</literal> per al menú &kde; (antic)</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/applications</filename></term>
<listitem><para>fitxers <literal role="extension">.desktop</literal> per al menú &kde; (des de &kde; 3.2).</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/apps</filename></term>
<listitem><para>Conté fitxers de dades per a aplicacions específiques. Cada aplicació te aquí un subdirectori per a desar fitxers de dades addicionals.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/config</filename></term>
<listitem><para>Fitxers de configuració. Els fitxers de configuració normalment tenen el mateix nom que l'aplicació a la qual pertanyen més les lletres <quote>rc</quote>. Un cas especial és <filename>kdeglobals</filename>. Aquest fitxer és llegit per totes les aplicacions &kde;.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename
class="directory">share/config/session</filename></term>
<listitem><para>Aquest directori s'usa per a la gestió de la sessió i tan sols està disponible sota <filename class="directory">$<envar>TDEHOME</envar></filename>. 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ó <command>ksmserver</command> desa referències a aquests números quan desa una sessió en <filename>ksmserverrc</filename>.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/doc/HTML</filename></term>
<listitem><para>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 <filename>index.docbook</filename>, el qual conté la documentació en format DocBook sense formatar i <filename>index.cache.bz2</filename>, que te la mateixa informació formatada com a &HTML; compremut amb <command>bzip2</command>. 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.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/icons</filename></term>
<listitem><para>En aquest directori es desen les icones. Les icones es divideixen per temes, dimensions i categoria d'ús.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/mimelnk</filename></term>
<listitem><para>En aquest directori, es desen els fitxers <literal role="extension">.desktop</literal> descrits pels tipus &MIME;. &kde; usa els tipus &MIME; per identificar el tipus d'un fitxer.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/services</filename></term>
<listitem><para>Aquest directori conté els fitxers <literal role="extension">.desktop</literal> 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;.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/servicetypes</filename></term>
<listitem><para>Aquest directori conté fitxers <literal role="extension">.desktop</literal> 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 <literal role="extension">.desktop</literal> els tipus de servei que proveeixen.</para> </listitem></varlistentry>

<varlistentry>
<term><filename class="directory">share/sounds</filename></term>
<listitem><para>Aquest directori conté fitxers de so.</para></listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/templates</filename></term>
<listitem><para>Aquest directori conté plantilles per a crear fitxers de diversos tipus. Una plantilla és un fitxer <literal role="extension">.desktop</literal> que descriu el fitxer i que inclou un referència a un fitxer en el subdirectori <filename class="directory">.source</filename>. Les plantilles d'aquest directori apareixen en el menú <guimenu>Crea nou</guimenu> 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.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename class="directory">share/wallpapers</filename></term>
<listitem><para>Aquest directori conté imatges que es poden usar com a imatge de fons</para></listitem>
</varlistentry>

</variablelist>

</sect1>

<sect1 id="host-specific-directories">
<title>Directoris específics de la màquina</title> 

<para>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 <command>lnusertemp</command>:</para>

<variablelist>

<varlistentry>
<term><filename>$<envar>TDEHOME</envar>/socket-$<envar>HOSTNAME</envar></filename></term>
<listitem><para>Normalment <filename class="directory">/tmp/tdesocket-$<envar>USER</envar>/</filename>, sol ser usat per diverses connexions &UNIX;.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename>$<envar>TDEHOME</envar>/tmp-$<envar>HOSTNAME</envar></filename></term>
<listitem><para>Normalment <filename class="directory">/tmp/tde-$<envar>USER</envar>/</filename>, s'usa per als fitxers temporals.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename>$<envar>TDEHOME</envar>/cache-$<envar>HOSTNAME</envar></filename></term>
<listitem><para>Normalment <filename class="directory">/var/tmp/tdecache-$<envar>USER</envar>/</filename>, s'usa per als fitxers a la memòria cau.</para>
</listitem>
</varlistentry>
</variablelist>

<para>Atès que tant <filename class="directory">/tmp</filename> com <filename class="directory">/var/tmp</filename> 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 <command>lnusertemp</command> crearà un nou directori amb un nom alternatiu i l'enllaçarà.</para>

</sect1>

<sect1 id="configuration-files">
<title>Fitxers de configuració</title> <para>&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 <acronym>UTF</acronym>-8 codificant el text extern en <acronym>ASCII</acronym>.</para>

<para>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ó.</para>

<informalexample><para>El següent exemple mostra un fitxer de configuració que conté dos grups. El primer conté les claus <varname>LargeCursor</varname> i <varname>SingleClick</varname>, el segon conté les claus <varname>Show hidden files</varname> i <varname>Sort by</varname>:</para>

<programlisting>[KDE]
LargeCursor=false
SingleClick=true
</programlisting>

<programlisting>[KFileDialog Settings]
Show hidden files=false
Sort by=Name
</programlisting>
</informalexample>

<para>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:</para>

<programlisting><replaceable>entrada</replaceable>=<replaceable>valor</replaceable>
</programlisting>

<para>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 <quote>s</quote>.</para>

<para>Hi ha alguns altres codis de barra invertida, aquí està la llista completa: <itemizedlist>
<listitem><para><token>\s</token> se pot usar com un espai</para>
</listitem>
<listitem><para><token>\t</token> es pot usar per incloure un tabulador</para>
</listitem>
<listitem><para><token>\r</token> per a un caràcter de retorn de carro</para>
</listitem>
<listitem><para><token>\n</token> per a un caràcter de retorn de línia (nova línia)</para>
</listitem>
<listitem><para><token>\\</token> per incloure la barra invertida</para>
</listitem>
</itemizedlist></para>

<informalexample><para>En el següent exemple el valor de l'entrada <varname>Caption</varname> s'inicia amb dos espais mentre que l'entrada <varname>Description</varname> 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.</para>

<programlisting>[Preview Image]
Caption=\s My Caption
Description=This is\na very long\ndescription.
</programlisting>
</informalexample>

<para>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 (<quote>#</quote>). 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 <emphasis>no</emphasis> són conservats.</para>

<para>Poden haver-hi múltiples fitxers de configuració amb el mateix nom en el subdirectori <filename class="directory">share/config</filename> 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 <filename class="directory">$<envar>TDEHOME</envar></filename> 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.</para>

<informalexample>
<para>Si <filename>$<envar>HOME</envar>/.trinity/share/config/foobar</filename> conté: <programlisting>
[MyGroup]
Color=red
Shape=circle
</programlisting> i <filename>/etc/opt/kde3/share/config/foobar</filename> conté <programlisting>
[MyGroup]
Color=blue
Position=10,10
</programlisting> el resultat serà: <programlisting>[MyGroup]
Color=red
Shape=circle
Position=10,10
</programlisting>
</para>
</informalexample>

<informalexample>
<para>Si <filename>$<envar>HOME</envar>/.trinity/share/config/foobar</filename> conté <programlisting>
[MyGroup]
Color=red
Shape=circle
[MyGroup]
Color=green
</programlisting> i <filename>/opt/kde_staff/share/config/foobar</filename> conté <programlisting>
[MyGroup]
Color=purple
Position=20,20
</programlisting> i <filename>/etc/opt/kde3/share/config/foobar</filename> conté <programlisting>
[MyGroup]
Color=blue
Position=10,10
</programlisting> el resultat serà: <programlisting>[MyGroup]
Color=green
Shape=circle
Position=20,20
</programlisting>
</para>
</informalexample>

<para>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 <userinput>[$i]</userinput> al darrera de la clau, &pex;: <programlisting>Color[$i]=blue
</programlisting>
</para>
<para>Un grup d'entrades es pot blocar col·locant <userinput>[$i]</userinput> al darrera del nom de grup, &pex;: <programlisting>[MyGroup][$i]
</programlisting>
</para>
<para>Per a blocar un fitxer complet, inicia el fitxer amb <userinput>[$i]</userinput> en una sola línia, &ead;: <programlisting>[$i]
</programlisting>
</para>

<informalexample>
<para>Si <filename>$<envar>HOME</envar>/.trinity/share/config/foobar</filename> conté: <programlisting>
[MyGroup]
Color=red
Shape=circle
</programlisting> i <filename>/etc/opt/kde3/share/config/foobar</filename> conté: <programlisting>
[MyGroup][$i]
Color=blue
Position=10,10
</programlisting> el resultat serà: <programlisting>[MyGroup]
Color=blue
Position=10,10
</programlisting>
</para>
</informalexample>

<informalexample><para>Si <filename>$<envar>HOME</envar>/.trinity/share/config/foobar</filename> conté: <programlisting>
[MyGroup]
Color=red
Shape=circle
</programlisting> i <filename>/opt/kde_staff/share/config/foobar</filename> conté <programlisting>
[MyGroup]
Color=purple
Shape=rectangle
</programlisting> i <filename>/etc/opt/kde3/share/config/foobar</filename> conté <programlisting>
[MyGroup][$i]
Color=blue
Position=10,10
</programlisting> el resultat serà <programlisting>[MyGroup]
Color=purple
Shape=rectangle
Position=10,10
</programlisting>
</para>
</informalexample>


<para>L'anomenada <quote>expansió de l'intèrpret de comandaments</quote> 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 <token>[$e]</token>. 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 <token>[$ie]</token>. L'usuari no podrà canviar-la per descomptat.</para>

<informalexample>
<para>En el següent exemple el valor per a l'entrada <varname>Host</varname> està determinada per la sortida del programa <command>hostname</command>. Aquesta configuració també està blocada per assegurar-se que el valor serà sempre determinat dinàmicament.</para>

<para>El valor per a l'entrada <varname>Email</varname> es determina omplint els valors de les variables d'entorn $<envar>USER</envar> i $<envar>HOST</envar>. Quan <systemitem class="username">jordi</systemitem> es connecta en <systemitem class="systemname">jordi_màquina</systemitem> es retornarà un valor igual a <literal>jordi@jordi_màquina</literal>. La configuració no està blocada.</para>

<programlisting>[Mail Settings] 
Host[$ie]=$(hostname)
Email[$e]=${USER}@${HOST}
</programlisting>
</informalexample>

<para>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.</para>

<informalexample>
<para>En el següent exemple el valor de l'entrada <varname>Caption</varname> dependrà de l'idioma. Si l'usuari ha seleccionat francès com a idioma (codi d'idioma <literal>fr</literal>) el valor de l'entrada serà <quote>Ma L&eacute;gende</quote>. En qualsevol altra cas el valor usat serà <quote>My caption</quote>.</para>

<programlisting>[Preview Image]
Caption=My Caption
Caption[fr]=Ma L&eacute;gende
</programlisting>
</informalexample>

<informalexample>
<para>En aquest exemple el valor de l'entrada <varname>Caption</varname> dependrà de l'idioma. Si l'usuari ha seleccionat francès com a idioma (codi d'idioma <literal>fr</literal>) el valor de l'entrada serà <quote>Ma L&eacute;gende</quote>. En qualsevol altra cas el valor usat serà <quote>My caption</quote>.</para>

<programlisting>[Preview Image]
Caption=My Caption
Caption[fr]=Ma L&eacute;gende
</programlisting>
</informalexample>

<para>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 <filename class="directory">$<envar>TDEDIR</envar>/share/config.kcfg</filename>, 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.</para>

<informalexample>
<para>Aquí hi ha un exemple d'un fitxer de configuració &XML;: <programlisting><markup>
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE kcfg SYSTEM "http://www.kde.org/standards/kcfg/1.0/kcfg.dtd"&gt;
&lt;kcfg&gt;
    &lt;kcfgfile name="korganizerrc"/&gt;
    &lt;group name="General"&gt;
         &lt;entry type="Bool" key="Auto Save"&gt;
             &lt;label&gt;Enable automatic saving of calendar&lt;/label&gt;
             &lt;default&gt;true&lt;/default&gt;
         &lt;/entry&gt;
         &lt;entry type="Int" key="Auto Save Interval"&gt;
             &lt;default&gt;10&lt;/default&gt;
         &lt;/entry&gt;
    &lt;/group&gt;
&lt;/kcfg&gt;
</markup>
</programlisting>
</para>
<para>Tindrà el mateix efecte que: <programlisting>[General]
Auto Save=false
Auto Save Interval=25
</programlisting>
</para>
</informalexample>

</sect1>

<sect1 id="kde-startup-sequence">
<title>Seqüència d'inici de &kde;</title>

<sect2 id="tdm">
<title>&tdm;</title>

<para>Sempre s'executa com a <systemitem class="username">root</systemitem>! Usa <filename>$<envar>TDEDIR</envar>/share/config/tdmrc</filename> i <filename>/etc/X11/xdm/Xservers</filename>. L'últim conté una entrada com:</para>

<programlisting>:0 local /usr/X11R6/bin/X :0 vt07
</programlisting>

<para>També són fitxers rellevants per a l'inici: </para>
<simplelist>
<member>La secció [X-*-Core] en <filename>tdmrc</filename> </member>
<member>Configuració: <filename>/etc/X11/xdm/Xsetup</filename> </member>
<member>Els usuaris introdueixen el nom d'usuari i la contrasenya </member>
<member>Inici: <filename>/etc/X11/xdm/Xstartup</filename> - com a root </member>
<member>Sessió: <filename>/etc/X11/xdm/Xsession</filename> - inicia la sessió com a usuari </member>
<member>= Per a una sessió KDE: <command>kde</command> o <command>starttde</command> </member>
<member>= Si està present <filename>~/.xsession</filename> o <filename>~/.xinitrc</filename> </member>
<member>Tornar a inciar: <filename>/etc/X11/xdm/Xreset</filename> - després de finalitzar la sessió </member>
</simplelist>

</sect2>

<sect2 id="starttde">
<title>L'script d'inici de &kde;: <command>starttde</command></title>

<para>La seqüència d'inici de &kde; comença amb l'script <filename>starttde</filename>. 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 <filename>starttde</filename>:</para>

<programlisting>LD_BIND_NOW=true tdeinit +kcminit +knotify i kwrapper
ksmserver $TDEWM
</programlisting>

<para>La primera línia inicia el procés mestre <command>tdeinit</command>. El procés mestre <command>tdeinit</command> s'usa per iniciar tots els altres processos de &kde;. Apareix en la sortida de <command>ps <option>aux</option></command> com a <computeroutput>tdeinit: Running...</computeroutput>. Els arguments després de <command>tdeinit</command> són els noms dels processos que s'iniciaràn. <token>+</token> indica que <command>tdeinit</command> necessita esperar a que el procés finalitzi. <command>tdeinit</command> també inicia <command>dcopserver</command>, <command>tdelauncher</command> i <command>kded</command>.</para>

<para>La segona de les dos línies indica a <command>tdeinit</command> que iniciï el procés de gestió de la sessió <command>ksmserver</command>. El gestor de la sessió determina el temps de vida d'aquesta. Quan aquest procés surt, l'usuari ha sortit.</para>

</sect2>
</sect1>

<sect1 id="background-processes">
<title>Processos en segon pla</title>

<para>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:</para>

<variablelist>
<varlistentry>
<term><command>dcopserver</command></term>
<listitem><para>Comunicació amb l'escriptori</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>kded</command></term>
<listitem><para>Dimoni de servei genèric.</para>
<para>Inicien <link linkend="tdesycoca">Sycoca</link> per actualitzar la base de dades sempre que sigui necessari</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>kcminit</command></term>
<listitem><para>Inicialització de servei</para>
<para>Mireu <xref linkend="kcminit"/> per obtenir més informació.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>tdelauncher</command></term>
<listitem><para>Carrega el programa (aquest <emphasis>no</emphasis> és el diàleg <keycombo action="simul">&Alt;<keycap>F2</keycap> </keycombo>!).</para>
<para>Mireu <xref linkend="tdelauncher"/> per obtenir més informació.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>knotify</command></term>
<listitem><para>Notificacions d'usuari.</para>
<para>Mireu <xref linkend="knotify"/> per obtenir més informació.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>ksmserver</command></term>
<listitem><para>Gestió de la sessió</para>
<para>Mireu <xref linkend="ksmserver"/> per obtenir més informació.</para>
</listitem>
</varlistentry>

</variablelist>

<sect2 id="tdeinit">
<title><command>tdeinit</command></title>
<para><command>tdeinit</command> s'usa per iniciar tots els demés programes de &kde;. <command>tdeinit</command> pot iniciar tant fitxers de programa binari així com mòduls carregables per <command>tdeinit</command> (els <acronym>KLM</acronym>). Els <acronym>KLM</acronym> funcionen de manera similar als fitxers de programa binari però es poden iniciar d'una forma més eficient. Els <acronym>KLM</acronym> es troben en <filename class="directory">$<envar>TDEDIR</envar>/lib/kde3</filename></para>

<para>L'inconvenient dels programes iniciats d'aquesta manera és que apareixeran com a <computeroutput><command>tdeinit</command></computeroutput> en la sortida de <command>top</command> i <command>ps</command>. Useu <command>top <option>-c</option></command> o <command>ps <option>aux</option></command> per al nom actual del programa:</para>

<screen><prompt>%</prompt><userinput><command>ps <option>aux</option></command></userinput>
<computeroutput>
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
</computeroutput>
</screen>

<para><computeroutput>tdeinit:Runing...</computeroutput> identifica el procés mestre <command>tdeinit</command>. Els d'altres processos llistats són els programes iniciats com als <acronym>KLM</acronym>.</para>

<para>Quan <command>tdeinit</command> és executat per primera vegada iniciarà <command>dcopserver</command>, <command>tdelauncher</command> i <command>kded</command>, així com aquells programes addicionals especificats a la seva línia de comandaments en el script <command>starttde</command>, normalment <command>kcminit</command> i <command>knotify</command>.</para>

</sect2>

<sect2 id="dcopserver">
<title><command>dcopserver</command></title>

<para><command>dcopserver</command> é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 <command>dcop</command>. &DCOP; és essencial per a totes les aplicacions &kde;.</para>

<para>Alguns fitxers relacionats:</para>

<variablelist>
<varlistentry>
<term><filename>$<envar>HOME</envar>/.DCOPserver_$<envar>HOSTNAME</envar>_$<envar>DISPLAY</envar></filename></term>
<listitem><para>&pex;, <filename>.DCOPserver_linux__0</filename>. Controlat per $<envar>DCOPAUTHORITY</envar></para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename>/tmp/.ICE-unix/dcop<replaceable>número</replaceable>-<replaceable>pid</replaceable></filename></term>
<listitem><para>&pex;, <filename>dcop7634-1069677856</filename>. Aquest és el fitxer al que apunta <filename>DCOPserver</filename>.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><filename>$<envar>HOME</envar>/.ICEauthority</filename></term>
<listitem><para>Autorització de la informació controlada per $<envar>ICEAUTHORITY</envar></para>
</listitem>
</varlistentry>
</variablelist>

</sect2>

<sect2 id="kcminit">
<title>kcminit</title>

<para><command>kcminit</command> 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 <varname>X-TDE-Init</varname>:</para>

<programlisting>[Desktop Entry]
Encoding=UTF-8
Exec=tdecmshell energy
Icon=energy_star
Type=Application
X-TDE-Library=energy
X-TDE-Init=energy
</programlisting>

<para>La inicialització de serveis es sol emprar per a inicialitzar maquinari basat en les configuracions especifiques de l'usuari.</para>

<para><userinput><command>kcminit <option>--list</option></command></userinput> es pot usar per a mostrar tots els serveis inicialitzats i <userinput><command>kcminit <replaceable>servei</replaceable></command></userinput> es pot usar per executar un determinat servei de forma explícita. Això pot resultar molt pràctic per esbrinar problemes d'inici.</para>

</sect2>

<sect2 id="tdelauncher">
<title><command>tdelauncher</command></title>

<para><command>tdelauncher</command> es un dimoni responsable del servei d'activació en el &kde;. Opera en connexió directa amb el procés mestre <command>tdeinit</command> per iniciar nous processos. Les aplicacions &kde; es comuniquen amb <command>tdelauncher</command> a través de &DCOP; per iniciar noves aplicacions o serveis.</para>

<para>El més conegut és el missatge d'error: <computeroutput><errortext> TDELauncher could not be reached via DCOP </errortext></computeroutput> el qual indica un seriós problema amb <command>dcopserver</command> o que <command>tdelauncher</command> ha petat.</para>

<para><command>tdelauncher</command> es pot tornar a iniciar amb <command>tdeinit</command> des d'una finestra de consola. Abans de fer-ho assegureu-vos que $<envar>HOME</envar>, $<envar>DISPLAY</envar> i la resta de les variables $<envar>TDEDIR(S)</envar> estan correctament configurades!</para>

</sect2>

<sect2 id="knotify">
<title><command>knotify</command></title>

<para>La principal tasca de <command>knotify</command> és transmetre les notificacions de so al servidor de so, a la vegada que proveeix mètodes de notificació alternatius.</para>

</sect2>


</sect1>

<sect1 id="ksmserver">
<title>KSMServer</title>

<para><command>ksmserver</command> é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 <literal role="extension">.desktop</literal> en el directori <filename class="directory">$<envar>TDEDIR</envar>/share/autostart</filename>. L'auto-arrencada d'una aplicació pot estar condicionada per l'entrada <varname>X-TDE-autostart-condition</varname> en el fitxer <literal role="extension">.desktop</literal>.</para>

<informalexample>
<para>Per exemple el fitxer <filename>ktip.desktop</filename> conté:</para>

<programlisting>X-TDE-autostart-condition=ktiprc:TipOfDay:RunOnStart:true
</programlisting>

<para>Això vol dir que el fitxer de configuració <filename>ktiprc</filename> serà marcat amb una entrada <varname>RunOnStart</varname> en la secció <varname>[TipOfDay]</varname>. Si no es troba l'entrada, s'assumeix el valor <literal>true</literal>, el qual vol dir que <application>ktip</application> és una de les aplicacions que per omissió seran auto-arrencades.</para>
</informalexample>

<para>Algunes de les aplicacions auto-arrencables per <command>ksmserver</command> són:</para>

<variablelist>

<varlistentry>
<term><command>kdesktop</command></term>
<listitem><para>L'escriptori de &kde;</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>&kicker;</command></term>
<listitem><para>El plafó de &kde;</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>ktip</command></term>
<listitem><para>Un programa amb el consell del dia</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>kwrited</command></term>
<listitem><para>Una utilitat per a rebre missatges del sistema enviats a l'usuari</para>
</listitem>
</varlistentry>

<varlistentry>
<term>&klipper;</term>
<listitem><para>Una utilitat de portapapers que s'ancora en el plafó</para>
</listitem>
</varlistentry>

<varlistentry>
<term><command>kalarm</command></term>
<listitem><para>Una utilitat que us avisa quan es produeix una cita</para>
</listitem>

</varlistentry>
</variablelist>

<para><command>kdesktop</command> inicia aquelles aplicacions desades en <filename class="directory">$<envar>TDEHOME</envar>/Autostart</filename>. <command>kdesktop</command> obrirà automàticament qualsevol fitxer desat en aquest directori incloguen documents, fitxers binaris o aplicacions en forma de fitxers <literal role="extension">.desktop</literal>.</para>

<para>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ó <filename>ksmserverrc</filename> 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 <filename class="directory">$<envar>TDEHOME</envar>/share/config/session</filename>. La informació de l'estat de &twin; conté la col·locació de les finestres de totes les aplicacions de la sessió. </para>

</sect1>

<sect1 id="environment-variables">
<title>Variables d'entorn</title>

<para>Algunes variables d'entorn importants usades per &kde;:</para>

<variablelist>

<varlistentry>
<term>$<envar>TDEDIR</envar></term>
<listitem><para>Ha d'estar establerta si <envar>TDEDIRS</envar> 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.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDEDIRS</envar></term>
<listitem><para>Solapa <envar>TDEDIR</envar> 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;.</para> 
</listitem>
</varlistentry>

<varlistentry><term><envar>$TDEHOME</envar></term><listitem><para>Si no està establerta, &kde; usa <filename class="directory">~/.trinity</filename> com a directori en el que es desaran dades personals.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDEROOTHOME</envar></term><listitem><para>Si no està establerta, &kde; usa <filename class="directory">~root/.trinity</filename> com a directori en el que es desaran les dades personals del <systemitem class="username">root</systemitem>. 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 <systemitem class="username">root</systemitem> amb el comandament <command>su</command>.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDEWM</envar></term><listitem><para>Si la variable d'entorn <envar>TDEWM</envar> ha estat assignada, llavores el seu contingut serà usat com al gestor de finestres de &kde; dins del script <command>starttde</command> en comptes de &twin;.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_LANG</envar></term><listitem><para>Solapa la configuració de l'idioma de &kde;, &pex;, <userinput>TDE_LANG=fr kprograma &amp;</userinput> inicia un programa amb la traducció francesa si els fitxers necessaris estan instal·lats.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_MULTIHEAD</envar></term><listitem><para>Si el contingut d'aquesta variable és <literal>true</literal> indica que &kde; s'executa en un sistema amb múltiples monitors.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_FORK_SLAVES</envar></term>
<listitem><para>(&kde; 3.2.3) Estableix aquesta variable per a generar <acronym>TDEIO</acronym>-slaves directament des del mateix procés de l'aplicació. Per omissió els <acronym>TDEIO</acronym>-slaves són generats usant <command>tdelauncher</command>/<command>tdeinit</command>. Aquesta opció és pràctica si el <acronym>TDEIO</acronym>-slave ha d'executar-se en el mateix entorn que l'aplicació. Aquest pot ser el cas de <application>Clearcase</application>.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_HOME_READONLY</envar></term>
<listitem><para>Establir aquesta variable per indicar si el vostre directori d'inici està muntat en tan sols lectura.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_NO_IPV6</envar></term><listitem><para>(Des de &kde; 3.2.3) - Establir aquesta variable per a deshabilitar el suport <acronym>IPv6</acronym> i les recerques <acronym>DNS</acronym> <acronym>IPv6</acronym>.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_IS_PRELINKED</envar></term><listitem><para>(Des de &kde; 3.2) - Establir aquesta variable per indicar que heu pre-enllaçat els vostres binaris i biblioteques &kde;. Això pot tancar <command>tdeinit</command>.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_UTF8_FILENAMES</envar></term><listitem><para>Si aquesta aquesta variable d'entorn està establerta, &kde; assumeix que tots els noms de fitxer estan codificats en <acronym>UTF-8</acronym> independentment de la codificació local.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDE_FULL_SESSION</envar></term><listitem><para>(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ó).</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDESYCOCA</envar></term><listitem><para>Us permet especificar la ruta i el nom de fitxer del fitxer cau del sistema de configuració generat pel &kde;.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDETMP</envar></term><listitem><para>Us permet especificar una altra ruta diferent que <filename class="directory">/tmp</filename> per a que &kde; hi desi els fitxers temporals.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>TDEVARTMP</envar></term><listitem><para>Us permet especificar una altra ruta diferent que <filename class="directory">/var/tmp</filename> per a que &kde; hi desi els seus fitxers de variable.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>XDG_DATA_HOME</envar></term><listitem><para>(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 <filename class="directory">$<envar>HOME</envar>/.local/share</filename></para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>XDG_DATA_DIRS</envar></term><listitem><para>(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 <filename class="directory">$<envar>XDG_DATA_HOME</envar></filename>. Per omissió és <literal>/usr/local/share/:/usr/share/</literal></para>

<para>&kde; afegeix localitzacions per a $<envar>TDEDIRS</envar> així com perfils. S'usa per als fitxers de menú <literal role="extension">.desktop</literal> i <literal role="extension">.directory</literal>. Els fitxers <literal role="extension">.desktop</literal> estan en <filename class="directory">$<envar>XDG_DATA_DIRS</envar>/applications</filename>. Els fitxers <literal role="extension">.directory</literal> estan sota $XDG_DATA_DIRS/desktop-directories. </para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>XDG_CONFIG_HOME</envar></term><listitem><para>(&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 <filename class="directory">$<envar>HOME</envar>/.config</filename>.</para>
</listitem>
</varlistentry>

<varlistentry><term>$<envar>XDG_CONFIG_DIRS</envar></term><listitem><para>(&kde; 3.2) - Defineix l'ordre de preferència dels directoris base per a cercar fitxers de configuració addicionals al directori base $<envar>XDG_CONFIG_HOME</envar>. Per omissió és <filename class="directory">/etc/xdg</filename>. &kde; també afegeix les localitzacions i perfils de $<envar>TDEDIRS</envar>. Emprat per les descripcions de <literal role="extension">.menu</literal> en <filename class="directory">$<envar>XDG_CONFIG_DIRS</envar>/menus</filename>. </para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="the-tdeinit-mystery">
<title>El misteriós tdeinit</title>

<!-- FIXME: Add more words. Fix markup -->

<para><command>tdeinit</command> és usat per iniciar tots els demés programes de &kde;. <command>tdeinit</command> pot iniciar tant fitxers de programes binaris com mòduls carregables per <command>tdeinit</command> (els <acronym>KLM</acronym>). Els <acronym>KLM</acronym> funcionen de manera similar als fitxers de programes binaris però es poden iniciar d'una forma més eficient. Els <acronym>KLM</acronym> es troben en <filename class="directory">$<envar>TDEDIR</envar>/lib/kde3</filename>.</para>

<para>L'inconvenient dels programes iniciats d'aquesta manera és que apareixeran com a <computeroutput><command>tdeinit</command></computeroutput> en la sortida de <command>top</command> i <command>ps</command>. Useu <command>top <option>-c</option></command> o <command>ps <option>aux</option></command> per al nom actual del programa:</para>

<screen><prompt>%</prompt> <userinput><command>ps aux | grep bastian</command></userinput>
<computeroutput>
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
</computeroutput>
</screen>
<para>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:</para>

<screen><prompt>%</prompt> <userinput><command>killall kdesktop</command></userinput>
<computeroutput>kdesktop: no process killed</computeroutput></screen>

<para>Podeu estar intentant usar <userinput><command>killall tdeinit</command></userinput>, però el matar tots els processos de tdeinit provocarà que es tanqui tot el &kde;. En efecte. Destrucció total!</para>

<para>Hi ha dues solucions simples a això:</para>

<screen><prompt>%</prompt> <userinput><command>tdekillall kdesktop</command></userinput>
o millor l'antic
<prompt>%</prompt> <userinput><command>kill 26195</command></userinput></screen>
<para><command>tdekillall</command> forma part del paquet <acronym>SDK</acronym> de &kde;.</para>

</sect1>

</chapter>

<chapter id="customizing-kde">
<title>Personalitzar el &kde;</title>


<sect1 id="desktop-icons">
<title>Icones de l'escriptori</title>

<para>&kde; usa diversos tipus d'icones:</para>
<itemizedlist>
<listitem><para>Documents</para>
</listitem>
<listitem><para>Enllaços a llocs web (usant fitxers <literal role="extension">.desktop</literal>)</para>
</listitem>
<listitem><para>Enllaços a aplicacions (usant fitxers <literal role="extension">.desktop</literal>)</para>
</listitem>
<listitem><para>Dispositius - Discs, particions i perifèrics: <itemizedlist>
<listitem><para>Usar explícitament fitxers <literal role="extension">.desktop</literal></para>
</listitem>
<listitem><para>Automàticament mitjançant devices:// io-slave</para>
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem><para>Específics del venedor (&pex;, El meu ordinador amb &SuSE;).</para>
</listitem>
</itemizedlist>

<sect2 id="desktop-icons-websites">
<title>Llocs web</title>
<para>Enllaços als llocs web usant fitxers <literal role="extension">.desktop</literal>: <menuchoice><guimenu>Crea nou</guimenu><guisubmenu>Fitxer</guisubmenu><guimenuitem>Enllaç a la localització (URL)</guimenuitem></menuchoice>. Canvieu la icona usant els diàlegs de <guilabel>Propietats</guilabel>. El fitxer <literal role="extension">.desktop</literal> resultant serà: <programlisting>[Desktop Entry]
Encoding=UTF-8
Icon=/opt/kde3/share/apps/kdesktop/pics/ksslogo.png
Type=Link
URL=http://www.kde.org/
</programlisting>
</para>
</sect2>

<sect2 id="desktop-icons-applications">
<title>Aplicacions</title>

<para>Enllaçar aplicacions usant fitxers <literal role="extension">.desktop</literal>: <menuchoice><guimenu>Crea nou</guimenu><guisubmenu>Fitxer</guisubmenu><guimenuitem>Enllaç a aplicació</guimenuitem></menuchoice>. 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</para>

<!-- Perhaps legacy and translated should be the other way around, but -->
<!-- this is how it appears in Waldo's presentation. Need to check -->
<!-- this -->

<programlisting>[Desktop Entry]<co id="boilerplate"/>
Encoding=UTF-8
GenericName=IRC Client<co id="generic-desc"/>
GenericName[af]=Irc Kli&euml;t
GenericName[de]=IRC Programm
...
GenericName[zu]=Umthengi we IRC<co id="legacy"/>
SwallowExec=<co id="translated"/>
Name=KSirc
Name[af]=Ksirc
Name[de]=KSirc
...
</programlisting>

<calloutlist>
<callout arearefs="boilerplate"><para>Informació de resum</para>
</callout>
<callout arearefs="generic-desc"><para>Descripció genèrica traduïda, no s'usa a l'escriptori</para>
</callout>
<callout arearefs="legacy"><para>Heretat, es pot eliminar</para>
</callout>
<callout arearefs="translated"><para>Nombre traduït tal i com apareixerà a l'escriptori</para>
</callout>
</calloutlist>

<para>Icones de l'escriptori</para>
<programlisting>...
Name[zu]=Ksirc
MimeType=<co id="co-mimetype"/>
Exec=ksirc %i %m<co id="co-exec"/>
Icon=ksirc<co id="co-icon"/>
TerminalOptions=<co id="co-terminaloptions"/>
Path=<co id="co-path"/>
Type=Application<co id="co-type"/>
Terminal=0<co id="co-terminal"/>
X-TDE-StartupNotify=true<co id="co-x-tde-startupnotify"/>
X-DCOP-ServiceType=Multi<co id="co-x-dcop-servicetype"/>
Categories=Qt;TDE;Network<co id="co-categories"/>
</programlisting>

<calloutlist>
<callout arearefs="co-mimetype"><para>Suporta tipus &MIME;, no s'usa a l'escriptori</para>
</callout>
<callout arearefs="co-exec"><para>La línia de comandaments a executar</para>
</callout>
<callout arearefs="co-icon"><para>La icona, que s'obté a partir del tema d'icona o la ruta completa</para>
</callout>
<callout arearefs="co-terminaloptions"><para>Tan sols s'usa si és necessari el terminal</para>
</callout>
<callout arearefs="co-path"><para>Directori de treball per al comandament</para>
</callout>
<callout arearefs="co-type"><para>Més informació de resum</para>
</callout>
<callout arearefs="co-terminal"><para>Useu true si es necessita terminal, aplicació de text</para>
</callout>
<callout arearefs="co-x-tde-startupnotify"><para>Mostra el cursor saltarí, deshabilitar si no funciona.</para>
</callout>
<callout arearefs="co-x-dcop-servicetype"><para>S'ha iniciat l'aplicació correctament? Eliminar si no funciona</para>
</callout>
<callout arearefs="co-categories"><para>Categories per al menú &kde;, no usat a l'escriptori</para>
</callout>
</calloutlist>



</sect2>

<sect2 id="desktop-icons-exec">
<title>L'opció <varname>Exec</varname> en els fitxers <literal role="extension">.desktop</literal></title>

<para>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: <variablelist>
<varlistentry>
<term>%f</term> <listitem><para>Un únic nom de fitxer; usat quan es deixa anar el fitxer sobre una icona, o amb les associacions de fitxer.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%F</term>
<listitem><para>Una llista de fitxers; usat per aplicacions que poden obrir diversos fitxers locals a la vegada.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%u</term>
<listitem><para>Una única &URL; senzilla: Si l'aplicació pot manejar, &pex;, les &URL; &FTP; o &HTTP; per si mateixa, d'altra manera usarà el &kde;.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%U</term>
<listitem><para>Una llista de les &URL;; primer descarregarà el fitxer i passarà un fitxer local a l'aplicació (!!)</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%d</term>
<listitem><para>La carpeta del fitxer a obrir; d'utilitat si l'aplicació necessita tenir un fitxer en el directori de treball actual.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%D</term>
<listitem><para>Una llista de carpetes, no és gaire pràctic.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%i</term> 
<listitem><para>La icona; l'opció <option>--icon</option>; l'aplicació de &kde; usarà la icona de la línia <varname>Icon</varname>= en la barra de tasques.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%m</term>
<listitem><para>La mini icona; heretada.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>%c</term> 
<listitem><para>L'etiqueta; l'opció <option>--caption</option>; l'aplicació &kde; usarà el nom des de la línia <varname>Name</varname>= en la barra de tasques.</para>
</listitem>
</varlistentry>

</variablelist>
</para>

<informalexample>
<para>Exemples: <segmentedlist>
<segtitle>Línia <varname>Exec</varname></segtitle>
<segtitle>Comandament executat</segtitle>
<seglistitem><seg>ksirc %i</seg><seg><command>ksirc --icon ksirc</command></seg>
</seglistitem>
<seglistitem><seg>cd %d; kedit $(basename %f)</seg><seg><command>cd /tmp; kedit fitxer.txt</command></seg>
</seglistitem>
</segmentedlist>
</para>
</informalexample>

<!--Dont' know what this refers to: -->
<!--See What's This (Shift-F1) in Properties Dialog-->

</sect2>

<sect2 id="desktop-icons-devices">
<title>Dispositius</title>
<para>Enllaços als dispositius usant fitxers <literal role="extension">.desktop</literal>: Crea nou -> Dispositiu </para>
</sect2>

<sect2 id="where-to-define">
<title>A on es defineix</title>

<para>Alguns llocs a on definir les icones de l'escriptori: <itemizedlist>

<listitem><para><filename class="directory">~/Desktop</filename>: copiat des de <filename class="directory">/etc/skel/Desktop</filename>.</para></listitem>

<listitem><para><filename class="directory">$<envar>TDEDIR</envar>/apps/kdesktop/Desktop</filename> (fusionat)</para></listitem>

<listitem><para><filename class="directory">$<envar>TDEDIR</envar>/apps/kdesktop/DesktopLinks</filename> (copiat)</para></listitem>

<listitem><para>Icones de dispositiu (fusionats dinàmicament)</para></listitem>

<listitem><para>La distribució SUSE Linux copia algunes icones en starttde.theme des de <filename class="directory">/opt/kde3/share/config/SuSE/default/</filename></para></listitem>

</itemizedlist>
</para>
</sect2>
</sect1>

<sect1 id="tde-menu">
<title>El menú &kde;</title>

<sect2 id="how-it-works">
<title>Com funciona</title>

<para>En &kde; 3.2 s'introdueix un format de menú comú en <ulink url="http://freedesktop.org/Standards/menu-spec/">http://freedesktop.org/Standards/menu-spec/</ulink>.</para>
<para>Abans de &kde; 3.2: <itemizedlist>

<listitem><para>Estructura de directoris sota <filename class="directory">share/applnk</filename></para></listitem>

<listitem><para>La estructura de directoris representa la estructura de menús</para></listitem>

<listitem><para>Cada fitxer <literal role="extension">.desktop</literal> representa una única aplicació</para></listitem>

</itemizedlist>
</para>

<para>És dificultós el tornar a col·locar la estructura en &kde; 3.2 per tant el nou format és: <itemizedlist>
<listitem><para>Defineix la estructura en un únic fitxer .menu</para></listitem>
<listitem><para>Està basat en categories</para></listitem>
<listitem><para>es compartit per <acronym>GNOME</acronym> i &kde;</para></listitem>
<listitem><para>Suporta l'estil de menús applnk</para></listitem>
</itemizedlist>
</para>

<informalexample>
<para>Exemple de <filename>applications.menu</filename>: <programlisting><markup>
        &lt;Menu&gt;
            &lt;Name&gt;Office&lt;/Name&gt;
            &lt;Directory&gt;suse-office.directory&lt;/Directory&gt;
            &lt;Include&gt;
                &lt;Filename&gt;Acrobat Reader.desktop&lt;/Filename&gt;
                &lt;Filename&gt;tde-kpresenter.desktop&lt;/Filename&gt;
                &lt;Filename&gt;tde-kword.desktop&lt;/Filename&gt;
            &lt;/Include&gt;
        &lt;Menu&gt;
</markup>
</programlisting>
</para>
<para>Entrada de menú amb 3 aplicacions: <itemizedlist>

<listitem><para><filename>/usr/share/applications/Acrobat Reader.desktop</filename></para></listitem>

<listitem><para><filename>/opt/kde3/share/applications/kde/kpresenter.desktop</filename></para></listitem>

<listitem><para><filename>/opt/kde3/share/applications/kde/kword.desktop</filename></para></listitem>

</itemizedlist>
</para>
</informalexample>
</sect2>

<sect2 id="stored-where">
<title>A on es desen?</title>

<para>Els fitxers <literal role="extension">.menu</literal> descriuen la estructura del menú. Els fitxers es desen en <filename class="directory">$<envar>TDEDIR</envar>/etc/xdg/menus</filename> i <filename class="directory">/etc/xdg/menus</filename>. Aquí es desa tota la estructura del menú i està controlada per $<envar>XDB_CONFIG_DIRS</envar>. <filename class="directory">$<envar>HOME</envar>/.config/menus</filename> desa els canvis de la estructura del menú específics de l'usuari i està control.lat per $<envar>XDG_CONFIG_HOME</envar>. Per a més informació, mireu <ulink url="http://www.freedesktop.org/Standards/basedir-spec">http://www.freedesktop.org/Standards/basedir-spec</ulink>.</para>

<para>Els fitxers <literal role="extension">.desktop</literal> descriuen les aplicacions i es desen en: <filename class="directory">$<envar>TDEDIR</envar>/share/applications</filename>, <filename class="directory">/usr/share/applications</filename>, <filename class="directory">/usr/local/share/applications</filename>. Aquí es troben els fitxers <literal role="extension">.desktop</literal> de les aplicacions del sistema, que són control.lades per $<envar>XDG_DATA_DIRS</envar>.</para>

<para><filename class="directory">$<envar>HOME</envar>/.local/applications</filename> conté fitxers <literal role="extension">.desktop</literal> específics de cada usuari i els seus canvis. Són controlats per $<envar>XDG_DATA_HOME</envar>. Per a més informació, mireu <ulink url="http://www.freedesktop.org/Standards/basedir-spec">http://www.freedesktop.org/Standards/basedir-spec</ulink></para>


<para>Els fitxers <literal role="extension">.directory</literal> descriuen els submenús i es desen en: <filename class="directory">$<envar>TDEDIR</envar>/share/desktop-directories</filename>, <filename class="directory">/usr/share/desktop-directories</filename>, <filename class="directory">/usr/local/share/desktop-directories</filename>. Aquests són els fitxers <literal role="extension">.directory</literal> que contenen el menú de tot el sistema, i són controlats per $<envar>XDG_DATA_DIRS</envar>. Els canvis específics de l'usuari són desats en <filename class="directory">$<envar>HOME</envar>/.local/desktop-directories</filename>. Aquests són controlats per $<envar>XDG_DATA_HOME</envar>. Per a més informació, mireu <ulink url="http://www.freedesktop.org/Standards/basedir-spec">http://www.freedesktop.org/Standards/basedir-spec</ulink></para>

<informalexample>
<para>Exemple de <filename>applications.menu</filename>: <programlisting><markup>
             &lt;Menu&gt;
                        &lt;Name&gt;Art&lt;/Name&gt;
                        &lt;Directory&gt;suse-edutainment-art.directory&lt;/Directory&gt;
                        &lt;Include&gt;
                                &lt;Category&gt;X-SuSE-Art&lt;/Category&gt;
                        &lt;/Include&gt;
                &lt;/Menu&gt;
</markup>
</programlisting>
</para>

<para><literal>Art</literal> és el nom intern per a aquest menú. <filename>suse-edutainment-art.directory</filename> defineix el nom i la icona per aquest menú, i el menú inclou totes les aplicacions que tenen <literal>X-SuSE-Art</literal> llistat com a categoria, &pex;: <programlisting>Categories=Qt;TDE;Education;X-SuSE-Art
</programlisting></para>

<para><filename>suse-edutainment-art.directory</filename> defineix el nom i la icona per aquest menú: <programlisting>[Desktop Entry]
Name=Art and Culture
Icon=kcmsystem
</programlisting>
</para>
</informalexample>
</sect2>

<sect2 id="common-pitfalls">
<title>Trencacolls comuns</title>

<para>Les aplicacions que <emphasis>no</emphasis> s'inclouen en el menú <emphasis>no</emphasis> 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.</para>

<para>Quan no es volen aplicacions en el menú, poden col·locar-se en un menú <filename>.hidden</filename> (ocult) o en un menú dedicat amb <programlisting>
NoDisplay=true
</programlisting> en el fitxer <literal role="extension">.directory</literal></para>
</sect2>

<sect2 id="essential-menus">
<title>Menús essencials</title>

<para><filename class="directory">$<envar>TDEDIR</envar>/etc/xdg/menus/applications-merged/</filename> conté <filename>kde-essential.menu</filename> que inclou alguns menús essencials que no es mostren en el menú &kde; per si mateixos: <itemizedlist>
<listitem><para>El centre de control conté un menú Preferències que està ocult, definit per <filename>kde-settings.menu</filename> i amb icones i noms definits per <filename>kde-settings.directory</filename></para>
</listitem>
<listitem><para>El centre d'informació conté un menú Informació que està ocult, definit per <filename>kde-information.menu</filename> i amb icones i noms definits per <filename>kde-information.directory</filename>.</para>
</listitem>

<listitem><para>Els salvapantalles contenen un menú Sistema/Salvapantalles que està ocult, definit per <filename>kde-screensavers.menu</filename> i amb icones i noms establerts per <filename>kde-screensavers.directory</filename>. <filename>$<envar>TDEDIR</envar>/share/desktop-directories/kde-system-screensavers.directory</filename> conté: <programlisting>NoDisplay=true
</programlisting>
</para>
</listitem>
</itemizedlist></para>
</sect2>

<sect2 id="old-style-menus">
<title>Menús a l'estil antic</title>

<para>&kde; continua suportant els menús a l'estil antic que és definit per l'estructura de directoris de <filename class="directory">$<envar>TDEDIR</envar>/share/applnk</filename> (tot el sistema) i <filename class="directory">$<envar>HOME</envar>/.trinity/share/applnk</filename> (específic de l'usuari). Es poden veure a menys que el fitxer <literal role="extension">.desktop</literal> tingui una línia <varname>Categories</varname>=. En aquest cas la categoria determinarà la localització en el menú.</para>
</sect2>

<sect2 id="tdesycoca">
<title><application>KSycoca</application></title>
<para><application>KSycoca</application> desa a la memòria cau la estructura de menús i informació sobre totes les aplicacions. Podeu reconstruir la base de dades amb <userinput><command>tdebuildsycoca</command></userinput>. La base de dades que es construeix està en <filename class="directory">/var/tmp/tdecache-${<envar>USER</envar>}/tdesycoca</filename>. És usada automàticament per <application>KDED</application>, comprovada durant l'accés a &kde;, i <application>KDED</application> cerca canvis mentre s'està accedint.</para>

<para>Per a deshabilitar la recerca de canvis (pot no funcionar sobre NFS) afegiu el següent a <filename>kdedrc</filename>: <programlisting>[General]
CheckSycoca=false
</programlisting>
</para>

<para>Per a forçar la regeneració, executeu <userinput><command>touch $<envar>TDEDIR</envar>/share/services/update_tdesycoca</command></userinput>.</para>

</sect2>

<sect2 id="kmenuedit">
<title>&kmenuedit;</title>

<para>L'objectiu de &kmenuedit; és ajudar a un usuari amb la configuració. Els canvis en la estructura del menú són desats a <filename>~/.config/menus/applications-tdemenuedit.menu</filename>, els canvis de les aplicacions són desades en <filename class="directory">~/.local/share/applications/</filename> i els canvis dels submenús (icona, nom) són desats en <filename class="directory">~/.local/share/desktop-directories/</filename>. L'eina d'administració KIOSK usa &kmenuedit; i copia els canvis anteriors en les localitzacions de perfil o de tot el sistema. </para>

</sect2>

</sect1>

<!-- This section might be redundant. If it isn't, it needs some screenies -->
<sect1 id="kde-panel">
<title>El plafó de &kde;</title>

<para>El plafó de &kde; també conegut com a &kicker;. És modular i consisteix dels següents components: <itemizedlist>
<listitem><para>Applets</para></listitem>
<listitem><para>Botons d'aplicació</para></listitem>
<listitem><para>Botons especials</para></listitem>
</itemizedlist>
</para>

<para>Per omissió, el plafó conté els següents applets: <itemizedlist> <listitem><para>El paginador - mostra els escriptoris virtuals</para></listitem> <listitem><para>Barra de tasques</para></listitem> <listitem><para>Safata del sistema</para></listitem> <listitem><para>Rellotge.</para></listitem> </itemizedlist> i els següents botons especials: <itemizedlist>
<listitem><para>El menú &kde;</para></listitem>
<listitem><para>Botó de l'escriptori</para></listitem>
</itemizedlist>
</para>

<para>També s'han afegit diversos botons d'aplicació, es permeten espais: <itemizedlist>
<listitem><para>Botó d'inici</para></listitem>
<listitem><para>Botó del fullejador</para></listitem>
<listitem><para>Botó de KMail</para></listitem>
</itemizedlist>
</para>
</sect1>

<sect1 id="file-associations">
<title>Associacions de fitxer</title>

<para>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 <filename class="directory">$<envar>TDEDIR</envar>/share/mimelnk</filename> i els fitxers <literal role="extension">.desktop</literal> de les aplicacions contenen una llista dels tipus &MIME; suportats per aquesta aplicació.</para>

<informalexample>
<para><filename>kview.desktop</filename>: <programlisting>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
</programlisting>
</para>

<para><filename>kuickshow.desktop</filename>: <programlisting>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
</programlisting>
</para>

<para>Ambdós poden obrir image/gif, llavores. Quin s'usarà per obrir un fitxer <literal role="extension">.gif</literal>?</para>

<para>L'aplicació amb la preferència més alta! <filename>kview.desktop</filename> conté <programlisting>
InitialPreference=3
</programlisting> a on <filename>kuickshow.desktop</filename> conté <programlisting>
InitialPreference=6
</programlisting> De manera que, &kuickshow; serà usat per obrir els fitxers <literal role="extension">.gif</literal>. </para>

<para>Com podem aconseguir que s'usi &kview; per omissió?</para>

<para>Un usuari pot canviar l'associació de fitxers en el &centrecontrol;. Aquests canvis es desen en <filename>$<envar>HOME</envar>/.trinity/share/config/profilerc</filename>. 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.</para>

</informalexample>

</sect1>

</chapter>

<chapter id="locking-down-kde">
<title>Blocats de seguretat al &kde;</title>

<sect1 id="how-it-works-the-basics">
<title>Com funciona - El bàsic</title>

<para>&kde; incorpora característiques de blocats de seguretat que es centren en les següents opcions:</para>

<itemizedlist>
<listitem><para><link linkend="immutable-configuration-options">Crear opcions de configuració immutables</link></para></listitem>
<listitem><para><link linkend="action-restrictions">Restricció d'accions específiques</link></para></listitem>
<listitem><para><link linkend="url-restrictions">Restricció de l'accés a certes &URL;</link></para></listitem>
<listitem><para><link linkend="configuration-modules">Restricció d'accés a certs mòduls de configuració</link></para></listitem>
</itemizedlist>

</sect1>

<sect1 id="immutable-configuration-options">
<title>Opcions de configuració immutables</title>
<subtitle>Blocats de seguretat al &kde;</subtitle>

<para>Les opcions immutables permeten a l'administrador del sistema proveir una configuració per omissió que no pugui ser canviada per l'usuari.</para>

<para>Les opcions de configuració preexistents de l'usuari seran ignorades una vegada que aquesta opció s'hagi tornat immutable.</para>

<para>Les opcions es poden controlar per a cada entrada base, per grups d'entrades o un fitxer a partir del fitxer base.</para>

<para>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ó.</para>

<note><para>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.</para></note>

</sect1>

<sect1 id="action-restrictions">
<title>Restricció d'accions</title>

<para>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. <action>Desa document</action> é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ó <action>Desa document</action> és <option>action/file_save</option>. 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ó <option>shell_access</option> que deshabilita totes les funcionalitats que ofereix a l'usuari l'accés a un intèrpret de comandaments &UNIX;.</para>

<example>
<title>Restricció a l'usuari de l'accés a un intèrpret de comandaments</title>

<para>Per a prevenir que un usuari pugui accedir a l'intèrpret de comandaments podem restringir l'acció <option>shell_access</option> afegint el següent a <filename>kdeglobals</filename>: </para> 

<screen>[KDE Action Restrictions]
shell_access=false</screen>

<para>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:</para>

<screen><userinput><command>touch</command> <filename>$<envar>TDEDIR</envar>/share/services/update_tdesycoca</filename></userinput></screen>

<para>Ara torneu a accedir al &kde; i verifiqueu els següents punts:</para>

<itemizedlist>
<listitem><para>El &kmenu;</para></listitem>
<listitem><para>En &konqueror;, <menuchoice><guimenu>Eines</guimenu><guimenuitem>Obre terminal</guimenuitem></menuchoice></para></listitem>
<listitem><para>L'execució d'un comandament <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo></para></listitem>
</itemizedlist>
</example>
<para>Tota la documentació sobre les accions disponibles es poden trobar en <ulink url="http://www.kde.org/areas/sysadmin/">http://www.kde.org/areas/sysadmin/</ulink></para>

<para>Algunes de les accions més interessants són les llistades a sota:</para>

<variablelist>
<varlistentry>
<term><option>action/options_configure</option></term>
<listitem><para>L'opció <guimenuitem>Configura</guimenuitem> del menú <guimenu>Arranjament</guimenu></para></listitem>
</varlistentry>
<varlistentry>
<term><option>action/help_report_bug</option></term>
<listitem><para>L'opció <guimenuitem>Informe d'errors</guimenuitem> del menú <guimenu>Ajuda</guimenu></para></listitem>
</varlistentry>
<varlistentry>
<term><option>action/kdesktop_rmb</option></term>
<listitem><para>El menú del &BDR; sobre l'escriptori.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>action/kicker_rmb</option></term>
<listitem><para>El menú del &BDR; sobre el plafó.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>user/root</option></term>
<listitem><para>Oculta totes les accions o aplicacions que requereixen accés de <systemitem class="username">root</systemitem>.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>shell_access</option></term>
<listitem><para>Oculta totes les accions o aplicacions que proveeixen accés a l'intèrpret de comandaments.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>print/system</option></term>
<listitem><para>Deshabilita l'opció per a seleccionar el sistema d'impressió (motor).</para></listitem>
</varlistentry>
<varlistentry>
<term><option>lock_screen</option></term>
<listitem><para>Indica si l'usuari pot blocar la pantalla</para></listitem>
</varlistentry>
<varlistentry>
<term><option>start_new_session</option></term>
<listitem><para>Indica si l'usuari pot iniciar una segona sessió del sistema X (mireu també &tdm;)</para></listitem>
</varlistentry>
<varlistentry>
<term><option>opengl_screensavers</option></term>
<listitem><para>Indica si estan permesos els salvapantalles OpenGL per a l'usuari.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>manipulatescreen_screensavers</option></term>
<listitem><para>Permet als salvapantalles no ocultar tota la pantalla</para></listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="url-restrictions">
<title>Restriccions a les &URL;</title>

<para>Hi ha tres tipus de restriccions que es poden aplicar a les &URL;:</para>

<variablelist>
<varlistentry>
<term>list</term>
<listitem><para>Per a controlar si està permès el llistat d'un directori.</para></listitem>
</varlistentry>
<varlistentry>
<term>open</term>
<listitem><para>Per a controlar si es poden obrir certes &URL;</para></listitem>
</varlistentry>
<varlistentry>
<term>Redirect</term>
<listitem><para>Per a controlar si una &URL; en pot obrir una altra, encara que sigui automàticament o a través d'hiperenllaços.</para></listitem>
</varlistentry>
</variablelist>

<para>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;.</para>

<para>Les següents regles deshabiliten obrir les &URL; http i https externes a <systemitem class="domainname">.nostra-empresa.com</systemitem>:</para>

<screenco><areaspec>
<area id="url_commas" coords="3"/>
<area id="url_rule1" coords="3"/>
<area id="url_rule2" coords="4"/>
</areaspec>
<screen>[KDE URL Restrictions]
rule_count=2
rule_1=open,,,,http,,,false
rule_2=open,,,,http,*.nostra-empresa.com,,true</screen></screenco>

<calloutlist>
<callout arearefs="url_commas">
<para>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.</para> 
</callout>
<callout arearefs="url_rule1"><para><option>rule_1</option> prohibeix obrir qualsevol &URL; http o https</para></callout>
<callout arearefs="url_rule2"><para><option>rule_2</option> permet obrir qualsevol &URL; http i https en el domini <systemitem class="domainname">.nostra-empresa.com</systemitem>. Tingueu present que el joquer <token>*</token> tan sols està permès al començament d'un domini.</para></callout>
</calloutlist>

<para>Les següents regles fan que un usuari no pugui navegar pels directoris del sistema de fitxers local que estiguin fora del seu directori $<envar>HOME</envar>:</para>

<screenco><areaspec>
<area id="home_rule1" coords="3"/>
<area id="home_rule2" coords="4"/>
</areaspec>
<screen>[KDE URL Restrictions]
rule_count=2
rule_1=list,,,,file,,,false
rule_2=list,,,,file,,$HOME,true</screen></screenco>

<calloutlist>
<callout arearefs="home_rule1"><para><option>rule_1</option> prohibeix llistar qualsevol directori local</para></callout>
<callout arearefs="home_rule2"><para><option>rule_2</option> permet llistar els directoris que estan sota el vostre directori $<envar>HOME</envar>.</para></callout>
</calloutlist>

<para>$<envar>HOME</envar> i $<envar>TMP</envar> són valors especials que indiquen els directoris inici dels usuaris i el directori temporal de &kde; per als usuaris, &pex;, <filename class="directory">/tmp/tde-bastian</filename></para>

<para>Les següents regles fan que un usuari no pugui obrir fitxers locals que estiguin fora del seu directori $<envar>HOME</envar>:</para>

<screenco><areaspec>
<area id="local_rule1" coords="3"/>
<area id="local_rule2" coords="4"/>
<area id="local_rule3" coords="5"/>
</areaspec>
<screen>[KDE URL Restrictions]
rule_count=3
rule_1=open,,,,file,,,false
rule_2=open,,,,file,,$HOME,true
rule_3=open,,,,file,,$TMP,true</screen></screenco>

<calloutlist>
<callout arearefs="local_rule1"><para><option>rule_1</option> prohibeix obrir qualsevol fitxer local</para></callout>
<callout arearefs="local_rule2"><para><option>rule_2</option> permet obrir fitxers que estiguin sota el vostre directori $<envar>HOME</envar>.</para></callout>
<callout arearefs="local_rule3"><para><option>rule_3</option> 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ó.</para></callout>
</calloutlist>


<para>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.</para>

<para>Per exemple, si volem donar al servidor intranet <systemitem class="systemname">www.meva-empresa.com</systemitem> la possibilitat de fer referència a fitxers locals haurem d'afegir la següent regla:</para>

<screen>[KDE URL Restrictions]
rule_count=1
rule_1=redirect,http,www.meva-empresa.com,,file,,,true</screen>

<para>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:</para>

<variablelist>
<varlistentry>
<term>:local</term>
<listitem><para>Protocols que accedeixen de forma local a la informació desada, per exemple file:/, man:/, fonts:/, floppy:/</para></listitem>
</varlistentry>
<varlistentry>
<term>:internet</term>
<listitem><para>Protocols comuns a Internet com http i ftp</para></listitem>
</varlistentry>
</variablelist>

<para>La informació sobre aquests protocols es desa en fitxers <literal role="extension">*.protocol</literal> que són desats en <filename class="directory">$<envar>TDEDIR</envar>/share/services</filename>.</para>

<para>L'entrada <option>Class</option>= defineix el grup del qual forma part el protocol: <userinput><command>grep</command> <option>Class=</option> <filename>$<envar>TDEDIR</envar>/share/services/*.protocol</filename></userinput></para>

<para>Regles generals:</para>

<itemizedlist>
<listitem><para>Els protocols :local poden fer referència a qualsevol altra protocol</para></listitem>
<listitem><para>Sempre es permet fer referència a un protocol :internet</para></listitem>
<listitem><para>No tots els protocols formen part d'un grup, fish:/ per exemple.</para></listitem>
</itemizedlist>

</sect1>

<sect1 id="configuration-modules">
<title>Mòduls de configuració</title>

<para>&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.</para>

<informalexample>
<para>El mòdul de configuració de l'intermediari es troba en el centre de control però també forma part del diàleg <guilabel>Configura Konqueror</guilabel> en &konqueror;</para>

<para>Els mòduls de configuració individual es poden iniciar amb <command>tdecmshell</command> <replaceable>mòdul</replaceable></para>

<para>Per iniciar el mòdul de l'intermediari useu:</para>
<itemizedlist>
<listitem><para><command>tdecmshell</command> <filename>tde-proxy.desktop</filename></para></listitem>
<listitem><para><command>tdecmshell</command> proxy</para></listitem>
</itemizedlist>

<para><note><para>No totes les aplicacions usen mòduls de configuració, i el diàleg de configuració forma part integral de la pròpia aplicació.</para></note></para>
</informalexample>

<para>Tots els mòduls de configuració són parlant estrictament part del menú &kde;.</para>

<itemizedlist>
<listitem>
<para>Els mòduls que són visibles en el centre de control normalment tenen un fitxer <literal role="extension">.desktop</literal> en <filename class="directory">$<envar>TDEDIR</envar>/share/applications/kde</filename> i estan ordenats en el menú ocult <guimenu>Settings-Modules</guimenu> en <filename>kde-settings.menu</filename>, inclòs en <filename>kde-essential.menu</filename>.</para>
<screen><userinput><command>tdebuildsycoca</command> <option>--menutest</option> 2&gt; /dev/null | <command>grep</command> Settings-Modules</userinput></screen>
</listitem>
<listitem>
<para>Els mòduls específics de les aplicacions solen tenir un fitxer <literal role="extension">.desktop</literal> en <filename>$<envar>TDEDIR</envar>/share/applnk/.hidden</filename> que corresponen al menú ocult .hidden, inclòs com a un resultat de <markup>&lt;KDELegacyDirs/&gt;</markup>.</para>
<screen><userinput><command>tdebuildsycoca</command> <option>--menutest</option> 2&gt; /dev/null | <command>grep</command> .hidden</userinput></screen>
</listitem>
<listitem><para>En &kde; 3.3 és possible editar el centre de control amb <application>kcontroledit</application>. <application>kcontroledit</application> funciona de forma similar a <application>kmenuedit</application>, fent els canvis tan sols per a un usuari. Useu <application>kiosktool</application> per a fer els canvis per a tothom.</para></listitem> 
</itemizedlist>

<para>Els mòduls de configuració individual poden ser deshabilitats afegint el següent a <filename>kdeglobals</filename>:</para>

<screen>[KDE Control Module Restrictions]
<replaceable>id-mòdul</replaceable>=false</screen>
<para>Per exemple, per a deshabilitar el mòdul de l'intermediari useu:</para>
<screen>[KDE Control Module Restrictions]
tde-proxy.desktop=false</screen>
<para>Marqueu el centre de control i el diàleg <guilabel>Configura Konqueror</guilabel> si la configuració de l'intermediari encara és allí.</para>

</sect1>
<!-- 
<sect1 id="making-it-work">
<title>Making it Work</title>

Making It Work
KDE 3.2: Set $TDEDIRS from starttde script
Distribute profiles to all clients

</para>
</sect1>
-->
</chapter>

<chapter id="the-lazy-admin">
<title>L'administració ràpida</title>

<!-- This section appears to need quite a lot of additional words to -->
<!-- make sense. Perhaps it would be better to comment it out if it -->
<!-- can't be updated before the next release (Phil) -->
<!-- FIXME: Commented it out until it's got some more content fleshing it -->
<!-- out (Lauri)

<sect1 id="lazy-admin-overview">
<title>Overview</title>

<para>
The Lazy Admin
Overview
Deployment
	How to get &kde; available on many clients
Remote Desktop Sharing
Take a look at someone else desktop
DCOP
	The DCOP command line tool makes it possible to control &kde; applications from the command line
KDialog
	A versatile tool to use standard &kde; dialogs in your own scripts



Deployment
Thin Clients
Installing Software
= AutoYaST
= KickStart
Maintaining Settings
= /etc/tderc, other settings
= Use rsync to copy files around
= Shared filesystem such as NFS
o store profiles themselves on NFS



http://www.suse.de/~nashif/autoinstall/index.html

</para>
</sect1>
-->
<sect1 id="remote-desktop-sharing">
<title>Compartir l'escriptori remot</title>

<para>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.</para>

<para>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).</para>

<para>&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.</para>

<para>Les connexions entrants són manejades pel mòdul kinetd kded. Podeu usar el comandament <userinput><command>dcop</command> kded kinetd services</userinput> 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.</para>

<!-- TODO: Write a bit more here, with a walk through maybe? -->

</sect1>

<sect1 id="kde-diy">
<title>&kde; DIY - Construir les vostres pròpies eines</title>

<sect2 id="dcop">
<title>DCOP</title>

<para>El protocol de comunicació de l'escriptori, <acronym>DCOP</acronym> (Desktop COmmunication Protocol), és un mecanisme lleuger per a la comunicació entre processos. <acronym>DCOP</acronym> permet usar la interacció entre programes que s'estiguin executant. &kde; proporciona dos programes per a usar <acronym>DCOP</acronym>: <application>dcop</application>, un programa de línia de comandaments, i <application>kdcop</application>, un programa amb una <acronym>IGU</acronym>. </para>
<para>Algunes notes sobre l'ús de <command>dcop</command>: </para>

<para>
<itemizedlist>
<listitem>
<para><command>dcop</command> [opcions] [aplicació [objecte [funció [arg1] [arg2] ... ] ] ] </para>
</listitem>
<listitem>
<para>Aquestes aplicacions poden obrir més d'una finestra a la vegada que seran llistades com a &lt;aplicació&gt;-<acronym>PID</acronym> </para>
</listitem>
<listitem>
<para>Tots els arguments són sensibles a majúscules i minúscules. setFullScreen i setfullscreen són dues funcions diferents. </para>
</listitem>
<listitem>
<para>La marca d'expressió regular * es pot usar en l'aplicació i en els arguments objecte. <screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> kon*</option></userinput>
konqueror-16006
konsole-8954
</screen>
</para>
</listitem>

</itemizedlist>

</para>

<para>Alguns exemples de comandament i les seves corresponents sortides són les següents: </para>

<informalexample>
<screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> konsole*</option></userinput>
konsole-8954
</screen>
<para>Una &konsole; s'està executant amb un <acronym>PID</acronym> de 8954.</para>

<screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> konsole-8954</option></userinput>
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
</screen>
<para>Aquí podeu veure que hi ha quatre sessions executant-se.</para>

<screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> konsole-8954</option><option> konsole</option></userinput>
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()
</screen>
<para>Aquí estan les opcions per al programa principal &konsole;. </para>

<screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> konsole-8954</option><option> session-1</option></userinput>
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)
</screen>
<para>Aquestes són les opcions per a la primera sessió, session-1.</para>

<screen><prompt>&percnt; </prompt><userinput><command>dcop</command><option> konsole-8954</option><option> konsole</option><option> setFullScreen</option><parameter> true</parameter></userinput>
</screen>
<para>Això estableix que &konsole; sigui mostrat a pantalla completa.</para>

</informalexample>

<para>Quan s'usa més d'una aplicació/objecte, quina s'hauria d'usar? Li fem una referència? </para>
<screen><prompt>&percnt; </prompt><userinput><command>echo</command><option> $KONSOLE_DCOP</option></userinput>
DCOPRef(konsole-7547,konsole)

<prompt>&percnt; </prompt><userinput><command>dcop</command><option> $KONSOLE_DCOP</option><option> newSession</option></userinput>
session-6

<prompt>&percnt; </prompt><userinput><command>dcopstart</command><option> konsole</option></userinput>
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'

</screen>

</sect2>

<sect2 id="kdialog">
<title>KDialog</title>
<subtitle>&kde; DIY - Crear les vostres pròpies eines</subtitle>

<para>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;.</para>

<screen><userinput><command>kdialog</command> <option>--msgbox 'Teniu correu nou!'</option></userinput></screen>

<screen><userinput><command>kdialog</command> <option>--title 'Correu nou'</option> <option>--msgbox 'Teniu correu nou!'</option></userinput></screen>

<para>La part <application>KDialog</application> del títol es podeu canviar mitjançant l'opció <option>--caption</option></para>

<screen><userinput><command>kdialog</command> <option>--title 'Correu nou'</option> <option>--msgbox '¡Teniu nou correu!'</option> <option>--dontagain myfile:mykey</option></userinput></screen>

<para>Desa si es mostra altra vegada en <filename>$<envar>TDEHOME</envar>/share/config/myfile</filename> (escrivint en aquest fitxer les següents línies):</para>

<screen>[Notification Messages]
mykey=false</screen>

<para>En comptes de <option>--msgbox</option> podeu també usar <option>--sorry</option> i <option>--error</option>, de la forma apropiada. Per exemple, podeu usar <command>kdialog</command> <option>--sorry 'No s'ha pogut abastar la xarxa'</option> o <command>kdialog</command> <option>--error 'No es pot obrir la bústia de correu'</option>.</para>

<para>També és possible crear caixes de missatge que accepten si o no com resposta.</para>

<screen><command>kdialog</command> <option>--yesno 'Voleu connectar
a Internet?'</option> <command>echo</command> <returnvalue>$?</returnvalue></screen>

<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Valor retornat</entry>
<entry>Significat</entry>
</row>
</thead>
<tbody>
<row><entry>0</entry><entry>Sí, Bé, Continua</entry></row>
<row><entry>1</entry><entry>No</entry></row>
<row><entry>2</entry><entry>Cancel·la</entry></row>
</tbody>
</tgroup>
</informaltable>

<para>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ó <option>--dontagain</option> de tal manera que recordarà l'elecció i la retornarà les següents vegades sense tornar a mostrar el diàleg.</para>

<para>Algunes variacions són:</para>

<variablelist>
<varlistentry>
<term><option>--warningyesno</option></term>
<listitem>
<para>similar a <option>--yesno</option> però amb una icona diferent</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--warningcontinuecancel</option></term>
<listitem><para>Amb els botons <guibutton>Continua</guibutton> i <guibutton>Cancel·la</guibutton>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--warningyesnocancel</option></term>
<listitem><para>Amb els botons <guibutton>Sí</guibutton>, <guibutton>No</guibutton> i <guibutton>Cancel·la</guibutton>. Per exemple:</para>
<screen><command>kdialog</command> <option>--warningyesnocancel 'Voleu desar
els canvis?'</option></screen>
</listitem>
</varlistentry>
</variablelist>

<screen><command>kdialog</command> <option>--inputbox "Introduïu el vostre nom:" "VostreNom"</option></screen>

<para>El resultat serà imprès a la stdout, per assignar-lo a una variable podeu usar <userinput>name=$(kdialog --inputbox "Introduïu el vostre nom:" "VostreNom")</userinput>. L'últim argument és opcional, i s'usa per a omplir amb anterioritat el diàleg.</para>

<screen><userinput><varname>password</varname>=$(<command>kdialog</command> <option>--password "Introduïu la contrasenya:"</option>)</userinput></screen>

<para>L'opció <option>--dontagain</option> no funciona amb <option>--inputbox</option> o <option>--password</option></para>

<para>Hi ha dos diàlegs que permeten a l'usuari fer l'elecció des d'una llista:</para>

<variablelist>
<varlistentry>
<term><option>--menu</option></term>
<listitem>
<para>Permet a l'usuari seleccionar un únic ítem des d'una llista.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--checklist</option></term>
<listitem>
<para>Permet a l'usuari escollir un o més d'un ítem des d'una llista.</para>
</listitem>
</varlistentry>
</variablelist>

<screen><userinput><varname>city</varname>=$(<command>kdialog</command> <option>--menu "Seleccioneu una ciutat" a Londres b Madrid c París d Berlín</option>)</userinput></screen>

<para><varname>$city</varname> serà <returnvalue>a</returnvalue>, <returnvalue>b</returnvalue>, <returnvalue>c</returnvalue> o <returnvalue>d</returnvalue>.</para>

<screen><userinput><varname>city</varname>=$(<command>kdialog</command> <option>--checklist "Seleccioneu ciutats" a Londres off b Madrid on c París on d Berlín off</option>)</userinput></screen>

<para>Madrid i París estan seleccionades amb anterioritat. El resultat amb Madrid i París seleccionades serà <returnvalue>"b"</returnvalue> <returnvalue>"c"</returnvalue>.</para>

<para>Si afegiu l'opció <option>--separate-output</option>, situareu <returnvalue>b</returnvalue> i <returnvalue>c</returnvalue> cadascuna en la seva pròpia línia, fent el resultat més fàcil de processar.</para>

<screen>file=$(kdialog --getopenfilename $HOME)
file=$(kdialog --getopenfilename $HOME "*.png *.jpg|Image Files")
file=$(kdialog --getsavefilename $HOME/SaveMe.png)
file=$(kdialog --getexistingdirectory $HOME)</screen>

</sect2>

</sect1>

</chapter>
&groupware-with-kontact; </part>